Re: [PATCH 2/2] x86: speed cpu_up by quirking cpu_init_udelay

From: Ingo Molnar
Date: Sat May 09 2015 - 03:24:15 EST



(Resending my reply with more dyn-debug folks Cc:-ed)

* Len Brown <lenb@xxxxxxxxxx> wrote:

> On Fri, May 8, 2015 at 4:32 AM, Borislav Petkov <bp@xxxxxxxxx> wrote:
>
> >> + pr_debug("cpu_init_udelay quirk to %d, was %d", new_udelay, init_udelay);
> >
> > Can we make this printk(KERN_DEBUG please?
> >
> > I'd like to be able to slap "debug" on the command line and not
> > recompile the kernel. And no, dyndbg="file smpboot.c +p" or
> > whatever the syntax is, simply doesn't scale if I want to see all
> > debug messages from early boot.

Ugh, so I see we have grown this gem some time ago:

#if defined(CONFIG_DYNAMIC_DEBUG)
/* dynamic_pr_debug() uses pr_fmt() internally so we don't need it here */
#define pr_debug(fmt, ...) \
dynamic_pr_debug(fmt, ##__VA_ARGS__)

I didn't even realize it's there and it happend 6 years ago, in a very
unintuitively titled commit:

346e15beb534 driver core: basic infrastructure for per-module dynamic debug messages

So in what way does that title tell us that all pr_debug() calls are
redirected away if CONFIG_DYNAMIC_DEBUG is enabled (which distros do)?

So could we instead either add a dyndbg=all variant, or make 'debug'
trigger all dynamic_pr_debug() messages?

Because this redirection breaks the whole pr_*() abstraction rather
fundamentally, dyndebug stealing pr_debug() and hiding debug messages
when the user specifically asked for them via 'debug' is pretty nasty
IMHO ...

Thanks,

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