Subject: Re: [PATCH 1/2] iwlwifi: convert hex_dump_to_buffer() to %*ph

From: Andy Shevchenko <[email-masked]>
Date: Tue, 04 Aug 2015 13:47:13 +0300

On Thu, 2015-07-16 at 15:42 +0300, Andy Shevchenko wrote:
> There is no need to use hex_dump_to_buffer() in the cases like this:
> 
> 	hexdump_to_buffer(buf, len, 16, 1, outbuf, outlen, false);	> /* len <= 16 
> */
> 	sprintf("%s\n", outbuf);
> 
> since it maybe easily converted to simple:
> 
> 	sprintf("%*ph\n", len, buf);
> 
> Note: it seems in one case the output is groupped by 2 bytes and 
> looks like a
> typo. Thus, patch changes that to plain byte stream.

Any comments on this, anyone?

The idea is to minimize usage of hexdump_to_buffer(), i.e. not using it
when it's an obvious overkill.

> 
> Signed-off-by: Andy Shevchenko <[email-masked]>
> ---
>  drivers/net/wireless/iwlwifi/dvm/debugfs.c | 8 ++------
>  drivers/net/wireless/iwlwifi/mvm/debugfs.c | 7 +------
>  2 files changed, 3 insertions(+), 12 deletions(-)
> 
> diff --git a/drivers/net/wireless/iwlwifi/dvm/debugfs.c 
> b/drivers/net/wireless/iwlwifi/dvm/debugfs.c
> index 0ffb6ff..b15e44f 100644
> --- a/drivers/net/wireless/iwlwifi/dvm/debugfs.c
> +++ b/drivers/net/wireless/iwlwifi/dvm/debugfs.c
> @@ -310,12 +310,8 @@ static ssize_t iwl_dbgfs_nvm_read(struct file 
> *file,
>  	pos += scnprintf(buf + pos, buf_size - pos,
>  			 "NVM version: 0x%x\n", nvm_ver);
>  	for (ofs = 0 ; ofs < eeprom_len ; ofs += 16) {
> -		pos += scnprintf(buf + pos, buf_size - pos, "0x%.4x 
> ", ofs);
> -		hex_dump_to_buffer(ptr + ofs, 16 , 16, 2, buf + pos,
> -				   buf_size - pos, 0);
> -		pos += strlen(buf + pos);
> -		if (buf_size - pos > 0)
> -			buf[pos++] = '\n';
> +		pos += scnprintf(buf + pos, buf_size - pos, "0x%.4x 
> %16ph\n",
> +				 ofs, ptr + ofs);
>  	}
>  
>  	ret = simple_read_from_buffer(user_buf, count, ppos, buf, 
> pos);
> diff --git a/drivers/net/wireless/iwlwifi/mvm/debugfs.c 
> b/drivers/net/wireless/iwlwifi/mvm/debugfs.c
> index ffb4b5c..98abd31 100644
> --- a/drivers/net/wireless/iwlwifi/mvm/debugfs.c
> +++ b/drivers/net/wireless/iwlwifi/mvm/debugfs.c
> @@ -1200,12 +1200,7 @@ static ssize_t iwl_dbgfs_d3_sram_read(struct 
> file *file, char __user *user_buf,
>  	if (ptr) {
>  		for (ofs = 0; ofs < len; ofs += 16) {
>  			pos += scnprintf(buf + pos, bufsz - pos,
> -					 "0x%.4x ", ofs);
> -			hex_dump_to_buffer(ptr + ofs, 16, 16, 1, buf 
> + pos,
> -					   bufsz - pos, false);
> -			pos += strlen(buf + pos);
> -			if (bufsz - pos > 0)
> -				buf[pos++] = '\n';
> +					 "0x%.4x %16ph\n", ofs, ptr 
> + ofs);
>  		}
>  	} else {
>  		pos += scnprintf(buf + pos, bufsz - pos,

-- 
Andy Shevchenko <[email-masked]>
Intel Finland Oy