Re: [PATCH resend] MUSB: make DBG() calls actually depend on CONFIG_USB_MUSB_DEBUG

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

 



Hello.

Alan Stern wrote:

Enabling CONFIG_USB_MUSB_DEBUG option causes -DDEBUG to be added to gcc's
command line, however the DBG() macro doesn't depend on DEBUG, so that the
debugging messages get printed regardless of the option, and I don't think
that this was intended. Make xprintk() macro used by DBG() call pr_debug()
which only results in the actual code generated if DEBUG is defined.

This change makes musb_hdrc.o ~30% less in size with CONFIG_USB_MUSB_DEBUG
disabled (in host mode).

Signed-off-by: Sergei Shtylyov <sshtylyov@xxxxxxxxxxxxx>

FWIW, I believe this patch is good to have and should not be lost again.

This doesn't matter one way or another to me, but I'm curious... Instead of changing the xprintk macro so drastically,

The only change there is dropping of the explicit debug facility (which was always KERN_DEBUG anyway). Alternatively, I could get rid of the whole xprintk() macro, renaming it to DBG().

why not just
make the DBG macro depend on DEBUG? After all, that is the real problem as given in the patch description.

   With changing xprintk() to using pr_debug() we get shorter code.

Acked-by: Anand Gadiyar <gadiyar@xxxxxx>

Felipe, ping. What's your opinion on thios patch? We've just missed another merge window but maybe this will do as a bug fix?

--
The patch is against the recent Linus' tree.
It has been originally posted on March 30th.
Please consider at least for 2.6.36.

 drivers/usb/musb/musb_debug.h |    7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

Index: linux-2.6/drivers/usb/musb/musb_debug.h
===================================================================
--- linux-2.6.orig/drivers/usb/musb/musb_debug.h
+++ linux-2.6/drivers/usb/musb/musb_debug.h
@@ -42,10 +42,9 @@
 #define INFO(fmt, args...) yprintk(KERN_INFO, fmt, ## args)
 #define ERR(fmt, args...) yprintk(KERN_ERR, fmt, ## args)
-#define xprintk(level, facility, format, args...) do { \
+#define xprintk(level, format, args...) do { \
 	if (_dbg_level(level)) { \
-		printk(facility "%s %d: " format , \
-				__func__, __LINE__ , ## args); \
+		pr_debug("%s %d: " format, __func__, __LINE__, ## args); \
 	} } while (0)
extern unsigned musb_debug;
@@ -55,7 +54,7 @@ static inline int _dbg_level(unsigned l)
 	return musb_debug >= l;
 }
-#define DBG(level, fmt, args...) xprintk(level, KERN_DEBUG, fmt, ## args)
+#define DBG(level, fmt, args...) xprintk(level, fmt, ## args)
extern const char *otg_state_string(struct musb *);

Alan Stern

WBR, Sergei

--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux