Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

dev_vdbg(), available with -DVERBOSE_DEBUG

This defines a dev_vdbg() call, which is enabled with -DVERBOSE_DEBUG.
When enabled, dev_vdbg() acts just like dev_dbg(). When disabled, it is a
NOP ... just like dev_dbg() without -DDEBUG. The specific code was moved
out of a USB patch, but lots of drivers have similar support.

That is, code can now be written to use an additional level of debug
output, selected at compile time. Many driver authors have found this
idiom to be very useful. A typical usage model is for "normal" debug
messages to focus on fault paths and not be very "chatty", so that those
messages can be left on during normal operation without much of a
performance or syslog load. On the other hand "verbose" messages would be
noisy enough that they wouldn't normally be enabled; they might even affect
timings enough to change system or driver behavior.

Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

authored by

David Brownell and committed by
Greg Kroah-Hartman
aebdc3b4 bc37e283

+10 -7
-7
drivers/usb/core/driver.c
··· 29 29 #include "hcd.h" 30 30 #include "usb.h" 31 31 32 - #define VERBOSE_DEBUG 0 33 - 34 - #if VERBOSE_DEBUG 35 - #define dev_vdbg dev_dbg 36 - #else 37 - #define dev_vdbg(dev, fmt, args...) do { } while (0) 38 - #endif 39 32 40 33 #ifdef CONFIG_HOTPLUG 41 34
+10
include/linux/device.h
··· 572 572 } 573 573 #endif 574 574 575 + #ifdef VERBOSE_DEBUG 576 + #define dev_vdbg dev_dbg 577 + #else 578 + static inline int __attribute__ ((format (printf, 2, 3))) 579 + dev_vdbg(struct device * dev, const char * fmt, ...) 580 + { 581 + return 0; 582 + } 583 + #endif 584 + 575 585 #define dev_err(dev, format, arg...) \ 576 586 dev_printk(KERN_ERR , dev , format , ## arg) 577 587 #define dev_info(dev, format, arg...) \