Re: [PATCH v2] printk: help pr_debug and pr_devel to optimize out arguments

From: Joe Perches
Date: Wed Dec 09 2015 - 10:48:01 EST


On Wed, 2015-12-09 at 12:52 +0100, Arnd Bergmann wrote:
> On Friday 04 December 2015 16:51:42 Aaron Conole wrote:
> > --- a/include/linux/printk.h
> > +++ b/include/linux/printk.h
> > @@ -106,13 +106,14 @@ struct va_format {
> >  
> >  /*
> >   * Dummy printk for disabled debugging statements to use whilst maintaining
> > - * gcc's format and side-effect checking.
> > + * gcc's format checking.
> >   */
> > -static inline __printf(1, 2)
> > -int no_printk(const char *fmt, ...)
> > -{
> > -       return 0;
> > -}
> > +#define no_printk(fmt, ...)                    \
> > +do {                                           \
> > +       if (0) {                                \
> > +               printk(fmt, ##__VA_ARGS__);     \
> > +       }                                       \
> > +} while (0)
> >  
>
> This change breaks compiling lib/842/, at least in some configurations:
>
> lib/842/842_decompress.c: In function '__do_index':
> lib/842/842_decompress.c:205:12422: error: implicit declaration of function 'no_printk'

Please specify a configuration that fails.

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