Hello There are several printk statements without the "comedi:" prefix. Such as: printk(KERN_WARNING "BUG: dev->driver=NULL in comedi_device_detach()\n"); Do you think it is better to leave these as they are, or should they be changed to use comedi_xxx macros (which will print the "comedi:" prefix)? Also even with logging macros, there will be few lines which go beyond the 80 character boundary. On 13.6.2010, at 8.30, Joe Perches wrote: > On Sat, 2010-06-12 at 22:07 -0700, Joe Perches wrote: >> 2: Create some comedi logging functions or macros like: >> comedi_<level>(fmt, arg...) (ie: comedi_info, comedi_err, etc) >> where "comedi:" is always prefixed and an >> optional #define pr_fmt(fmt) KBUILD_MODNAME ": " fmt >> could be used. > > Maybe this is a start: > > Signed-off-by: Joe Perches <joe@xxxxxxxxxxx> > --- > drivers/staging/comedi/comedidev.h | 54 ++++++++++++++++++++++++++++++++++-- > 1 files changed, 51 insertions(+), 3 deletions(-) > > diff --git a/drivers/staging/comedi/comedidev.h b/drivers/staging/comedi/comedidev.h > index 4eb2b77..6c2bdde 100644 > --- a/drivers/staging/comedi/comedidev.h > +++ b/drivers/staging/comedi/comedidev.h > @@ -43,11 +43,59 @@ > > #include "comedi.h" > > -#define DPRINTK(format, args...) do { \ > - if (comedi_debug) \ > - printk(KERN_DEBUG "comedi: " format , ## args); \ > +#define comedi_printk(level, fmt, args...) \ > + printk(level "comedi: " pr_fmt(fmt), ##args) > + > +#define DPRINTK(format, args...) \ > +do { \ > + if (comedi_debug) \ > + comedi_printk(KERN_DEBUG, fmt, ##args); \ > } while (0) > > +#define comedi_emerg(fmt, ...) \ > + comedi_printk(KERN_EMERG, fmt, ##__VA_ARGS__) > +#define comedi_alert(fmt, ...) \ > + comedi_printk(KERN_ALERT, fmt, ##__VA_ARGS__) > +#define comedi_crit(fmt, ...) \ > + comedi_printk(KERN_CRIT, fmt, ##__VA_ARGS__) > +#define comedi_err(fmt, ...) \ > + comedi_printk(KERN_ERR, fmt, ##__VA_ARGS__) > +#define comedi_warn(fmt, ...) \ > + comedi_printk(KERN_WARNING, fmt, ##__VA_ARGS__) > +#define comedi_notice(fmt, ...) \ > + comedi_printk(KERN_NOTICE, fmt, ##__VA_ARGS__) > +#define comedi_info(fmt, ...) \ > + comedi_printk(KERN_INFO, fmt, ##__VA_ARGS__) > + > +/* comedi_devel() should produce zero code unless DEBUG is defined */ > +#ifdef DEBUG > +#define comedi_devel(fmt, ...) \ > + comedi_printk(KERN_DEBUG, fmt, ##__VA_ARGS__) > +#else > +#define comedi_devel(fmt, ...) \ > +({ \ > + if (0) \ > + comedi_printk(KERN_DEBUG, fmt, ##__VA_ARGS__); \ > + 0; \ > +}) > +#endif > + > +#if defined(DEBUG) > +#define comedi_debug(fmt, ...) \ > + comedi_printk(KERN_DEBUG, fmt, ##__VA_ARGS__) > +#elif defined(CONFIG_DYNAMIC_DEBUG) > +/* dynamic_pr_debug() uses pr_fmt() internally so we don't need it here */ > +#define comedi_debug(fmt, ...) \ > + dynamic_pr_debug(fmt, ##__VA_ARGS__) > +#else > +#define comedi_debug(fmt, ...) \ > +({ \ > + if (0) \ > + comedi_printk(KERN_DEBUG, fmt, ##__VA_ARGS__); \ > + 0; \ > +}) > +#endif > + > #define COMEDI_VERSION(a, b, c) (((a) << 16) + ((b) << 8) + (c)) > #define COMEDI_VERSION_CODE COMEDI_VERSION(COMEDI_MAJORVERSION, \ > COMEDI_MINORVERSION, COMEDI_MICROVERSION) > > _______________________________________________ devel mailing list devel@xxxxxxxxxxxxxxxxxxxxxx http://driverdev.linuxdriverproject.org/mailman/listinfo/devel