On Tue, Nov 9, 2010 at 7:35 PM, Joe Perches <[email protected]> wrote: > Using %pV reduces the number of printk calls and > eliminates any possible message interleaving from > other printk calls. > > Signed-off-by: Joe Perches <[email protected]> > --- > drivers/gpu/drm/drm_stub.c | 14 +++++++++++--- > 1 files changed, 11 insertions(+), 3 deletions(-) > > diff --git a/drivers/gpu/drm/drm_stub.c b/drivers/gpu/drm/drm_stub.c > index cdc89ee..e632527 100644 > --- a/drivers/gpu/drm/drm_stub.c > +++ b/drivers/gpu/drm/drm_stub.c > @@ -57,13 +57,21 @@ void drm_ut_debug_printk(unsigned int request_level, > const char *function_name, > const char *format, ...) > { > + struct va_format vaf; > va_list args; > > if (drm_debug & request_level) { > - if (function_name) > - printk(KERN_DEBUG "[%s:%s], ", prefix, function_name); > va_start(args, format); > - vprintk(format, args); > + > + vaf.fmt = format; > + vaf.va = &args; > + > + if (function_name) > + printk(KERN_DEBUG "[%s:%s], %pV", > + prefix, function_name, &vaf); > + else > + printk(KERN_DEBUG "%pV", &vaf);
Wouldn't it be easier and more convenient to just make the %pV format specifier just expect a format string and the va_arg list? Like this printk(KERN_DEBUG "%pV", format, &args); I mean, the %pV is kernel specific and we can just change how it works. Kristian _______________________________________________ dri-devel mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/dri-devel
