Re: [PATCH v1 1/1] media: drxk: Use %*ph for printing hexdump of a small buffer

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Andy,

On 12/06/2023 23:20, 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.
> 
> In long term it helps to kill pr_cont() or at least narrow down
> its use.
> 
> Signed-off-by: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx>
> ---
>  drivers/media/dvb-frontends/drxk_hard.c | 28 ++++++-------------------
>  1 file changed, 6 insertions(+), 22 deletions(-)
> 
> diff --git a/drivers/media/dvb-frontends/drxk_hard.c b/drivers/media/dvb-frontends/drxk_hard.c
> index 3301ef75d441..14035deeb6d8 100644
> --- a/drivers/media/dvb-frontends/drxk_hard.c
> +++ b/drivers/media/dvb-frontends/drxk_hard.c
> @@ -229,13 +229,8 @@ static int i2c_write(struct drxk_state *state, u8 adr, u8 *data, int len)
>  	struct i2c_msg msg = {
>  	    .addr = adr, .flags = 0, .buf = data, .len = len };
>  
> -	dprintk(3, ":");
> -	if (debug > 2) {
> -		int i;
> -		for (i = 0; i < len; i++)
> -			pr_cont(" %02x", data[i]);
> -		pr_cont("\n");
> -	}
> +	dprintk(3, ": %*ph\n", len, data);
> +
>  	status = drxk_i2c_transfer(state, &msg, 1);
>  	if (status >= 0 && status != 1)
>  		status = -EIO;
> @@ -268,14 +263,8 @@ static int i2c_read(struct drxk_state *state,
>  		return status;
>  	}
>  	if (debug > 2) {
> -		int i;
> -		dprintk(2, ": read from");
> -		for (i = 0; i < len; i++)
> -			pr_cont(" %02x", msg[i]);
> -		pr_cont(", value = ");
> -		for (i = 0; i < alen; i++)
> -			pr_cont(" %02x", answ[i]);
> -		pr_cont("\n");
> +		dprintk(2, ": read from %*ph, value = %*ph\n", len, msg,
> +			alen, answ);

The patch looks good, except here the dprintk debug level should be 3, not 2.
With that change the 'if (debug > 2)' can be dropped as well.

Regards,

	Hans

>  	}
>  	return 0;
>  }
> @@ -441,13 +430,8 @@ static int write_block(struct drxk_state *state, u32 address,
>  		}
>  		memcpy(&state->chunk[adr_length], p_block, chunk);
>  		dprintk(2, "(0x%08x, 0x%02x)\n", address, flags);
> -		if (debug > 1) {
> -			int i;
> -			if (p_block)
> -				for (i = 0; i < chunk; i++)
> -					pr_cont(" %02x", p_block[i]);
> -			pr_cont("\n");
> -		}
> +		if (p_block)
> +			dprintk(2, "%*ph\n", chunk, p_block);
>  		status = i2c_write(state, state->demod_address,
>  				   &state->chunk[0], chunk + adr_length);
>  		if (status < 0) {




[Index of Archives]     [Linux Input]     [Video for Linux]     [Gstreamer Embedded]     [Mplayer Users]     [Linux USB Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]

  Powered by Linux