Re: [PATCH 22/28] printk,kdb: capture printk() when in kdb shell

From: Andrew Morton
Date: Fri Feb 12 2010 - 23:40:11 EST


On Fri, 12 Feb 2010 17:20:22 -0600 Jason Wessel <jason.wessel@xxxxxxxxxxxxx> wrote:

> Andrew Morton wrote:
> > On Fri, 12 Feb 2010 16:35:37 -0600 Jason Wessel <jason.wessel@xxxxxxxxxxxxx> wrote:
> >
> >
> >> @@ -609,6 +610,14 @@ asmlinkage int printk(const char *fmt, ...)
> >> va_list args;
> >> int r;
> >>
> >> +#ifdef CONFIG_KGDB_KDB
> >> + if (unlikely(kdb_trap_printk)) {
> >> + va_start(args, fmt);
> >> + r = vkdb_printf(fmt, args);
> >> + va_end(args);
> >> + return r;
> >> + }
> >> +#endif
> >> va_start(args, fmt);
> >> r = vprintk(fmt, args);
> >> va_end(args);
> >>
> >
> > this?
> >
> > --- a/kernel/printk.c~a
> > +++ a/kernel/printk.c
> > @@ -594,7 +594,11 @@ asmlinkage int printk(const char *fmt, .
> > int r;
> >
> > va_start(args, fmt);
> > +#ifdef CONFIG_KGDB_KDB
> > + r = vkdb_printf(fmt, args);
> > +#else
> > r = vprintk(fmt, args);
> > +#endif
> > va_end(args);
> >
> > return r;
> > _
> >
>
> If you feel that would be cleaner, I can make that change, but I would
> also have to call vprintk() from vkdb_printf when ever kdb_trap_printk
> is not set. Do I understand your recommendation correctly?
>

err, no, I must have been in a drunken stupor. Was trying to find
a way to avoid the code duplication.


--
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/