Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1396078 > unrolled thread

[PATCH v1 1/1] skd_main: use %*ph to dump small buffers

Started byAndy Shevchenko <andriy.shevchenko@linux.intel.com>
First post2016-05-06 21:30 +0200
Last post2016-05-10 17:10 +0200
Articles 3 — 3 participants

Back to article view | Back to linux.kernel


Contents

  [PATCH v1 1/1] skd_main: use %*ph to dump small buffers Andy Shevchenko <andriy.shevchenko@linux.intel.com> - 2016-05-06 21:30 +0200
    Re: [PATCH v1 1/1] skd_main: use %*ph to dump small buffers Jens Axboe <axboe@fb.com> - 2016-05-10 16:50 +0200
      Re: [PATCH v1 1/1] skd_main: use %*ph to dump small buffers Andy Shevchenko <andy.shevchenko@gmail.com> - 2016-05-10 17:10 +0200

#1396078 — [PATCH v1 1/1] skd_main: use %*ph to dump small buffers

FromAndy Shevchenko <andriy.shevchenko@linux.intel.com>
Date2016-05-06 21:30 +0200
Subject[PATCH v1 1/1] skd_main: use %*ph to dump small buffers
Message-ID<rvTBL-2AR-3@gated-at.bofh.it>
Replace custom approach by %*ph specifier to dump small buffers in hex format.

Unfortunately we can't use print_hex_dump_bytes() here since tha gap is
present, though one familiar with the code may change this.

Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
---
 drivers/block/skd_main.c | 16 ++++------------
 1 file changed, 4 insertions(+), 12 deletions(-)

diff --git a/drivers/block/skd_main.c b/drivers/block/skd_main.c
index 910e065..2aa7fd4 100644
--- a/drivers/block/skd_main.c
+++ b/drivers/block/skd_main.c
@@ -2138,12 +2138,8 @@ static void skd_send_fitmsg(struct skd_device *skdev,
 		u8 *bp = (u8 *)skmsg->msg_buf;
 		int i;
 		for (i = 0; i < skmsg->length; i += 8) {
-			pr_debug("%s:%s:%d msg[%2d] %02x %02x %02x %02x "
-				 "%02x %02x %02x %02x\n",
-				 skdev->name, __func__, __LINE__,
-				 i, bp[i + 0], bp[i + 1], bp[i + 2],
-				 bp[i + 3], bp[i + 4], bp[i + 5],
-				 bp[i + 6], bp[i + 7]);
+			pr_debug("%s:%s:%d msg[%2d] %8ph\n",
+				 skdev->name, __func__, __LINE__, i, bp[i]);
 			if (i == 0)
 				i = 64 - 8;
 		}
@@ -2164,7 +2160,6 @@ static void skd_send_fitmsg(struct skd_device *skdev,
 		qcmd |= FIT_QCMD_MSGSIZE_64;
 
 	SKD_WRITEQ(skdev, qcmd, FIT_Q_COMMAND);
-
 }
 
 static void skd_send_special_fitmsg(struct skd_device *skdev,
@@ -2177,11 +2172,8 @@ static void skd_send_special_fitmsg(struct skd_device *skdev,
 		int i;
 
 		for (i = 0; i < SKD_N_SPECIAL_FITMSG_BYTES; i += 8) {
-			pr_debug("%s:%s:%d  spcl[%2d] %02x %02x %02x %02x  "
-				 "%02x %02x %02x %02x\n",
-				 skdev->name, __func__, __LINE__, i,
-				 bp[i + 0], bp[i + 1], bp[i + 2], bp[i + 3],
-				 bp[i + 4], bp[i + 5], bp[i + 6], bp[i + 7]);
+			pr_debug("%s:%s:%d  spcl[%2d] %8ph\n",
+				 skdev->name, __func__, __LINE__, i, bp[i]);
 			if (i == 0)
 				i = 64 - 8;
 		}
-- 
2.8.1

[toc] | [next] | [standalone]


#1398169

FromJens Axboe <axboe@fb.com>
Date2016-05-10 16:50 +0200
Message-ID<rxh91-4bJ-25@gated-at.bofh.it>
In reply to#1396078
On 05/06/2016 01:26 PM, Andy Shevchenko wrote:
> Replace custom approach by %*ph specifier to dump small buffers in hex format.
>
> Unfortunately we can't use print_hex_dump_bytes() here since tha gap is
> present, though one familiar with the code may change this.

Did you test this?

   CC [M]  drivers/block/skd_main.o
In file included from include/linux/kernel.h:13:0,
                  from drivers/block/skd_main.c:19:
drivers/block/skd_main.c: In function ‘skd_send_fitmsg’:
include/linux/kern_levels.h:4:18: warning: format ‘%p’ expects argument
of type ‘void *’, but argument 6 has type ‘int’ [-Wformat=]
  #define KERN_SOH "\001"  /* ASCII Start Of Header */
                   ^
include/linux/printk.h:114:10: note: in definition of macro ‘no_printk’
    printk(fmt, ##__VA_ARGS__); \
           ^
include/linux/kern_levels.h:14:20: note: in expansion of macro
‘KERN_SOH’
  #define KERN_DEBUG KERN_SOH "7" /* debug-level messages */
                     ^
include/linux/printk.h:289:12: note: in expansion of macro ‘KERN_DEBUG’
   no_printk(KERN_DEBUG pr_fmt(fmt), ##__VA_ARGS__)
             ^
drivers/block/skd_main.c:2141:4: note: in expansion of macro ‘pr_debug’
     pr_debug("%s:%s:%d msg[%2d] %8ph\n",
     ^
drivers/block/skd_main.c: In function ‘skd_send_special_fitmsg’:
include/linux/kern_levels.h:4:18: warning: format ‘%p’ expects argument
of type ‘void *’, but argument 6 has type ‘int’ [-Wformat=]
  #define KERN_SOH "\001"  /* ASCII Start Of Header */
                   ^
include/linux/printk.h:114:10: note: in definition of macro ‘no_printk’
    printk(fmt, ##__VA_ARGS__); \
           ^
include/linux/kern_levels.h:14:20: note: in expansion of macro
‘KERN_SOH’
  #define KERN_DEBUG KERN_SOH "7" /* debug-level messages */
                     ^
include/linux/printk.h:289:12: note: in expansion of macro ‘KERN_DEBUG’
   no_printk(KERN_DEBUG pr_fmt(fmt), ##__VA_ARGS__)
             ^
drivers/block/skd_main.c:2175:4: note: in expansion of macro ‘pr_debug’
     pr_debug("%s:%s:%d  spcl[%2d] %8ph\n",
     ^

-- 
Jens Axboe

[toc] | [prev] | [next] | [standalone]


#1398184

FromAndy Shevchenko <andy.shevchenko@gmail.com>
Date2016-05-10 17:10 +0200
Message-ID<rxhsm-4N0-13@gated-at.bofh.it>
In reply to#1398169
On Tue, May 10, 2016 at 5:45 PM, Jens Axboe <axboe@fb.com> wrote:
> On 05/06/2016 01:26 PM, Andy Shevchenko wrote:
>>
>> Replace custom approach by %*ph specifier to dump small buffers in hex
>> format.
>>
>> Unfortunately we can't use print_hex_dump_bytes() here since tha gap is
>> present, though one familiar with the code may change this.
>
>
> Did you test this?

Apparently I missed this somehow.

Typo is obvious, b[i] -> &b[i]

I will send an update and be sure that is compiled successfully.
Thanks!

>
>   CC [M]  drivers/block/skd_main.o
> In file included from include/linux/kernel.h:13:0,
>                  from drivers/block/skd_main.c:19:
> drivers/block/skd_main.c: In function ‘skd_send_fitmsg’:
> include/linux/kern_levels.h:4:18: warning: format ‘%p’ expects argument
> of type ‘void *’, but argument 6 has type ‘int’ [-Wformat=]
>  #define KERN_SOH "\001"  /* ASCII Start Of Header */
>                   ^
> include/linux/printk.h:114:10: note: in definition of macro ‘no_printk’
>    printk(fmt, ##__VA_ARGS__); \
>           ^
> include/linux/kern_levels.h:14:20: note: in expansion of macro
> ‘KERN_SOH’
>  #define KERN_DEBUG KERN_SOH "7" /* debug-level messages */
>                     ^
> include/linux/printk.h:289:12: note: in expansion of macro ‘KERN_DEBUG’
>   no_printk(KERN_DEBUG pr_fmt(fmt), ##__VA_ARGS__)
>             ^
> drivers/block/skd_main.c:2141:4: note: in expansion of macro ‘pr_debug’
>     pr_debug("%s:%s:%d msg[%2d] %8ph\n",
>     ^
> drivers/block/skd_main.c: In function ‘skd_send_special_fitmsg’:
> include/linux/kern_levels.h:4:18: warning: format ‘%p’ expects argument
> of type ‘void *’, but argument 6 has type ‘int’ [-Wformat=]
>  #define KERN_SOH "\001"  /* ASCII Start Of Header */
>                   ^
> include/linux/printk.h:114:10: note: in definition of macro ‘no_printk’
>    printk(fmt, ##__VA_ARGS__); \
>           ^
> include/linux/kern_levels.h:14:20: note: in expansion of macro
> ‘KERN_SOH’
>  #define KERN_DEBUG KERN_SOH "7" /* debug-level messages */
>                     ^
> include/linux/printk.h:289:12: note: in expansion of macro ‘KERN_DEBUG’
>   no_printk(KERN_DEBUG pr_fmt(fmt), ##__VA_ARGS__)
>             ^
> drivers/block/skd_main.c:2175:4: note: in expansion of macro ‘pr_debug’
>     pr_debug("%s:%s:%d  spcl[%2d] %8ph\n",
>     ^
>
> --
> Jens Axboe



-- 
With Best Regards,
Andy Shevchenko

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web