[v1,1/1] mfd: ipaq-micro: Use %*ph for printing hexdump of a small buffer

Message ID 20230612212007.3621-1-andriy.shevchenko@linux.intel.com
State New
Headers
Series [v1,1/1] mfd: ipaq-micro: Use %*ph for printing hexdump of a small buffer |

Commit Message

Andy Shevchenko June 12, 2023, 9:20 p.m. UTC
  The kernel already has a helper to print a hexdump of a small
buffer via pointer extension. Use that instead of open coded
variant.

In long term it helps to kill pr_cont() or at least narrow down
its use.

Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
---
 drivers/mfd/ipaq-micro.c | 6 ++----
 1 file changed, 2 insertions(+), 4 deletions(-)
  

Comments

Lee Jones June 21, 2023, 5:10 p.m. UTC | #1
On Tue, 13 Jun 2023, Andy Shevchenko wrote:

> The kernel already has a helper to print a hexdump of a small
> buffer via pointer extension. Use that instead of open coded
> variant.

That's not all you're doing is it?

Nice try.  2 patches please.

> In long term it helps to kill pr_cont() or at least narrow down
> its use.
> 
> Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
> ---
>  drivers/mfd/ipaq-micro.c | 6 ++----
>  1 file changed, 2 insertions(+), 4 deletions(-)
> 
> diff --git a/drivers/mfd/ipaq-micro.c b/drivers/mfd/ipaq-micro.c
> index 6d3968458e81..57fb7874fc91 100644
> --- a/drivers/mfd/ipaq-micro.c
> +++ b/drivers/mfd/ipaq-micro.c
> @@ -131,10 +131,8 @@ static void micro_rx_msg(struct ipaq_micro *micro, u8 id, int len, u8 *data)
>  		break;
>  	default:
>  		dev_err(micro->dev,
> -			"unknown msg %d [%d] ", id, len);
> -		for (i = 0; i < len; ++i)
> -			pr_cont("0x%02x ", data[i]);
> -		pr_cont("\n");
> +			"unknown msg %d [%d] %*ph\n", id, len, len, data);
> +		break;
>  	}
>  	spin_unlock(&micro->lock);
>  }
> -- 
> 2.40.0.1.gaa8946217a0b
>
  
Andy Shevchenko June 22, 2023, 12:31 p.m. UTC | #2
On Wed, Jun 21, 2023 at 06:10:40PM +0100, Lee Jones wrote:
> On Tue, 13 Jun 2023, Andy Shevchenko wrote:
> 
> > The kernel already has a helper to print a hexdump of a small
> > buffer via pointer extension. Use that instead of open coded
> > variant.
> 
> That's not all you're doing is it?
> 
> Nice try.  2 patches please.

I'm not sure it's possible to split to two clean patches that don't overlap
each other like by 70%. Can you elaborate a bit more on your vision on this?
  
Lee Jones June 22, 2023, 2 p.m. UTC | #3
On Thu, 22 Jun 2023, Andy Shevchenko wrote:

> On Wed, Jun 21, 2023 at 06:10:40PM +0100, Lee Jones wrote:
> > On Tue, 13 Jun 2023, Andy Shevchenko wrote:
> > 
> > > The kernel already has a helper to print a hexdump of a small
> > > buffer via pointer extension. Use that instead of open coded
> > > variant.
> > 
> > That's not all you're doing is it?
> > 
> > Nice try.  2 patches please.
> 
> I'm not sure it's possible to split to two clean patches that don't overlap
> each other like by 70%. Can you elaborate a bit more on your vision on this?

What does the 'break' have to do with changing print format?
  
Andy Shevchenko June 22, 2023, 2:56 p.m. UTC | #4
On Thu, Jun 22, 2023 at 03:00:58PM +0100, Lee Jones wrote:
> On Thu, 22 Jun 2023, Andy Shevchenko wrote:
> > On Wed, Jun 21, 2023 at 06:10:40PM +0100, Lee Jones wrote:
> > > On Tue, 13 Jun 2023, Andy Shevchenko wrote:
> > > > The kernel already has a helper to print a hexdump of a small
> > > > buffer via pointer extension. Use that instead of open coded
> > > > variant.
> > > 
> > > That's not all you're doing is it?
> > > 
> > > Nice try.  2 patches please.
> > 
> > I'm not sure it's possible to split to two clean patches that don't overlap
> > each other like by 70%. Can you elaborate a bit more on your vision on this?
> 
> What does the 'break' have to do with changing print format?

Ah, indeed! Thank you for spotting this. Yes, 2 patches.
  

Patch

diff --git a/drivers/mfd/ipaq-micro.c b/drivers/mfd/ipaq-micro.c
index 6d3968458e81..57fb7874fc91 100644
--- a/drivers/mfd/ipaq-micro.c
+++ b/drivers/mfd/ipaq-micro.c
@@ -131,10 +131,8 @@  static void micro_rx_msg(struct ipaq_micro *micro, u8 id, int len, u8 *data)
 		break;
 	default:
 		dev_err(micro->dev,
-			"unknown msg %d [%d] ", id, len);
-		for (i = 0; i < len; ++i)
-			pr_cont("0x%02x ", data[i]);
-		pr_cont("\n");
+			"unknown msg %d [%d] %*ph\n", id, len, len, data);
+		break;
 	}
 	spin_unlock(&micro->lock);
 }