public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH] usb: storage: make US_DEBUGPX print with LOGLEVEL_DEBUG
@ 2016-02-11  0:13 Victor Dodon
  2016-02-15  1:20 ` Greg Kroah-Hartman
  0 siblings, 1 reply; 4+ messages in thread
From: Victor Dodon @ 2016-02-11  0:13 UTC (permalink / raw)
  To: linux-kernel
  Cc: Matthew Dharm, Greg Kroah-Hartman, linux-usb, usb-storage,
	Gwendal Grignou

The US_DEBUGPX macro uses printk without specifying a kernel log level, so
the default kernel log level is used, which may not match LOGLEVEL_DEBUG
used in usb_stor_dbg. Use printk_emit with LOGLEVEL_DEBUG instead.

Signed-off-by: Victor Dodon <printesoi@chromium.org>
---
 drivers/usb/storage/debug.h | 10 ++++++++--
 1 file changed, 8 insertions(+), 2 deletions(-)

diff --git a/drivers/usb/storage/debug.h b/drivers/usb/storage/debug.h
index f525203..fc1c02f 100644
--- a/drivers/usb/storage/debug.h
+++ b/drivers/usb/storage/debug.h
@@ -43,6 +43,7 @@
 #define _DEBUG_H_
 
 #include <linux/kernel.h>
+#include <linux/printk.h>
 
 #define USB_STORAGE "usb-storage: "
 
@@ -53,7 +54,8 @@ void usb_stor_show_sense(const struct us_data *us, unsigned char key,
 __printf(2, 3) void usb_stor_dbg(const struct us_data *us,
 				 const char *fmt, ...);
 
-#define US_DEBUGPX(fmt, ...)	printk(fmt, ##__VA_ARGS__)
+#define US_DEBUGPX(fmt, ...)					\
+	printk_emit(0, LOGLEVEL_DEBUG, NULL, 0, fmt, ##__VA_ARGS__)
 #define US_DEBUG(x)		x
 #else
 __printf(2, 3)
@@ -64,7 +66,11 @@ static inline void _usb_stor_dbg(const struct us_data *us,
 #define usb_stor_dbg(us, fmt, ...)				\
 	do { if (0) _usb_stor_dbg(us, fmt, ##__VA_ARGS__); } while (0)
 #define US_DEBUGPX(fmt, ...)					\
-	do { if (0) printk(fmt, ##__VA_ARGS__); } while (0)
+	do {							\
+		if (0)						\
+			printk_emit(0, LOGLEVEL_DEBUG, NULL, 0,	\
+				    fmt, ##__VA_ARGS__);	\
+	} while (0)
 #define US_DEBUG(x)
 #endif
 
-- 
2.7.0.rc3.207.g0ac5344

^ permalink raw reply related	[flat|nested] 4+ messages in thread

* Re: [PATCH] usb: storage: make US_DEBUGPX print with LOGLEVEL_DEBUG
  2016-02-11  0:13 [PATCH] usb: storage: make US_DEBUGPX print with LOGLEVEL_DEBUG Victor Dodon
@ 2016-02-15  1:20 ` Greg Kroah-Hartman
  2016-02-16 23:45   ` Victor Dodon
  0 siblings, 1 reply; 4+ messages in thread
From: Greg Kroah-Hartman @ 2016-02-15  1:20 UTC (permalink / raw)
  To: Victor Dodon
  Cc: linux-kernel, Matthew Dharm, linux-usb, usb-storage,
	Gwendal Grignou

On Wed, Feb 10, 2016 at 04:13:43PM -0800, Victor Dodon wrote:
> The US_DEBUGPX macro uses printk without specifying a kernel log level, so
> the default kernel log level is used, which may not match LOGLEVEL_DEBUG
> used in usb_stor_dbg. Use printk_emit with LOGLEVEL_DEBUG instead.
> 
> Signed-off-by: Victor Dodon <printesoi@chromium.org>
> ---
>  drivers/usb/storage/debug.h | 10 ++++++++--
>  1 file changed, 8 insertions(+), 2 deletions(-)

Can you just get rid of US_DEBUGPX() entirely please?  It shouldn't be
needed anymore, just use usb_stor_dbg() instead.

thanks,

greg k-h

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH] usb: storage: make US_DEBUGPX print with LOGLEVEL_DEBUG
  2016-02-15  1:20 ` Greg Kroah-Hartman
@ 2016-02-16 23:45   ` Victor Dodon
  2016-02-17  0:40     ` Greg Kroah-Hartman
  0 siblings, 1 reply; 4+ messages in thread
From: Victor Dodon @ 2016-02-16 23:45 UTC (permalink / raw)
  To: Greg Kroah-Hartman
  Cc: linux-kernel, Matthew Dharm, linux-usb, usb-storage,
	Gwendal Grignou

On Sun, Feb 14, 2016 at 05:20:21PM -0800, Greg Kroah-Hartman wrote:
> On Wed, Feb 10, 2016 at 04:13:43PM -0800, Victor Dodon wrote:
> > The US_DEBUGPX macro uses printk without specifying a kernel log level, so
> > the default kernel log level is used, which may not match LOGLEVEL_DEBUG
> > used in usb_stor_dbg. Use printk_emit with LOGLEVEL_DEBUG instead.
> > 
> > Signed-off-by: Victor Dodon <printesoi@chromium.org>
> > ---
> >  drivers/usb/storage/debug.h | 10 ++++++++--
> >  1 file changed, 8 insertions(+), 2 deletions(-)
> 
> Can you just get rid of US_DEBUGPX() entirely please?  It shouldn't be
> needed anymore, just use usb_stor_dbg() instead.

Using usb_stor_dbg() instead of US_DEBUGPX() in
usb_stor_show_command() prints one byte per line with the full syslog
header, like this:

7,0,Feb 16 14:30:41,ubuntu,kernel:,[  422.876236] Command
TEST_UNIT_READY (6 bytes)
7,0,Feb 16 14:30:41,ubuntu,kernel:,[  422.876242] bytes: 
7,0,Feb 16 14:30:41,ubuntu,kernel:,[  422.876249]  00
7,0,Feb 16 14:30:41,ubuntu,kernel:,[  422.876255]  00
7,0,Feb 16 14:30:41,ubuntu,kernel:,[  422.876261]  00
7,0,Feb 16 14:30:41,ubuntu,kernel:,[  422.876267]  00
7,0,Feb 16 14:30:41,ubuntu,kernel:,[  422.876273]  00
7,0,Feb 16 14:30:41,ubuntu,kernel:,[  422.876279]  00
7,0,Feb 16 14:30:41,ubuntu,kernel:,[  422.876285]

instead of the desired:

7,0,Feb 16 14:30:41,ubuntu,kernel:,[  422.876236] Command
TEST_UNIT_READY (6 bytes)
7,0,Feb 16 14:30:41,ubuntu,kernel:,[  422.876242] bytes: 
7,0,Feb 16 14:30:41,ubuntu,kernel:,[  422.876249]  00 00 00 00 00 00

this is why I think the US_DEBUGPX() macro is still needed.

Regards,
Victor Dodon.

> 
> thanks,
> 
> greg k-h

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH] usb: storage: make US_DEBUGPX print with LOGLEVEL_DEBUG
  2016-02-16 23:45   ` Victor Dodon
@ 2016-02-17  0:40     ` Greg Kroah-Hartman
  0 siblings, 0 replies; 4+ messages in thread
From: Greg Kroah-Hartman @ 2016-02-17  0:40 UTC (permalink / raw)
  To: Victor Dodon
  Cc: linux-kernel, Matthew Dharm, linux-usb, usb-storage,
	Gwendal Grignou

On Tue, Feb 16, 2016 at 03:45:39PM -0800, Victor Dodon wrote:
> On Sun, Feb 14, 2016 at 05:20:21PM -0800, Greg Kroah-Hartman wrote:
> > On Wed, Feb 10, 2016 at 04:13:43PM -0800, Victor Dodon wrote:
> > > The US_DEBUGPX macro uses printk without specifying a kernel log level, so
> > > the default kernel log level is used, which may not match LOGLEVEL_DEBUG
> > > used in usb_stor_dbg. Use printk_emit with LOGLEVEL_DEBUG instead.
> > > 
> > > Signed-off-by: Victor Dodon <printesoi@chromium.org>
> > > ---
> > >  drivers/usb/storage/debug.h | 10 ++++++++--
> > >  1 file changed, 8 insertions(+), 2 deletions(-)
> > 
> > Can you just get rid of US_DEBUGPX() entirely please?  It shouldn't be
> > needed anymore, just use usb_stor_dbg() instead.
> 
> Using usb_stor_dbg() instead of US_DEBUGPX() in
> usb_stor_show_command() prints one byte per line with the full syslog
> header, like this:
> 
> 7,0,Feb 16 14:30:41,ubuntu,kernel:,[  422.876236] Command
> TEST_UNIT_READY (6 bytes)
> 7,0,Feb 16 14:30:41,ubuntu,kernel:,[  422.876242] bytes: 
> 7,0,Feb 16 14:30:41,ubuntu,kernel:,[  422.876249]  00
> 7,0,Feb 16 14:30:41,ubuntu,kernel:,[  422.876255]  00
> 7,0,Feb 16 14:30:41,ubuntu,kernel:,[  422.876261]  00
> 7,0,Feb 16 14:30:41,ubuntu,kernel:,[  422.876267]  00
> 7,0,Feb 16 14:30:41,ubuntu,kernel:,[  422.876273]  00
> 7,0,Feb 16 14:30:41,ubuntu,kernel:,[  422.876279]  00
> 7,0,Feb 16 14:30:41,ubuntu,kernel:,[  422.876285]
> 
> instead of the desired:
> 
> 7,0,Feb 16 14:30:41,ubuntu,kernel:,[  422.876236] Command
> TEST_UNIT_READY (6 bytes)
> 7,0,Feb 16 14:30:41,ubuntu,kernel:,[  422.876242] bytes: 
> 7,0,Feb 16 14:30:41,ubuntu,kernel:,[  422.876249]  00 00 00 00 00 00
> 
> this is why I think the US_DEBUGPX() macro is still needed.

Nope, fix the call to use the proper printk % modifier instead and you
will be fine.  No need to keep reinventing the wheel, we have had
support for byte streams in messages for probably over a decade now...

Nice try though :)

thanks,

greg k-h

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2016-02-17  0:40 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-02-11  0:13 [PATCH] usb: storage: make US_DEBUGPX print with LOGLEVEL_DEBUG Victor Dodon
2016-02-15  1:20 ` Greg Kroah-Hartman
2016-02-16 23:45   ` Victor Dodon
2016-02-17  0:40     ` Greg Kroah-Hartman

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox