yes, i had that happen too, and i am quite sure that the most sensible
way out is to provide a _single_ point for users to enable 'all things
debug'. I.e. a "loglevel=debug" (or loglevel=all) boot parameter.
Instead of the current list of zillions of ad-hoc switchlets that are
scattered all around the kernel. Tell me, within 10 seconds, which one
of these are the correct options and which ones are typos:
lapic
lapic=verbose
apic=debug
ignore-loglevel
initcalldebug
early_printk=vga
ignoreloglevel
debug
verbose
ignore_loglevel
initcall_debug
apic=verbose
initcall=debug
earlyprintk=vga
(i'm willing to bet a good beer that you probably have not found the
right solution in time :-)
People dont really want to individually enable pci or apic or smp
debugging or whatnot - when it's about boot debugging they (and we) just
want something really verbose. (_Sometimes_ we want more accurate
filters for runtime debugging, especially if something can produce a log
of continuing printks during userspace bootup - but that is an
afterthought IMO.)
with such a facility in place we could just hide all non-essential
messages by default, and have the perpetual possibility to get a verbose
bootup without users having to rebuild their (often distro-built)
kernel.
The only ongoing work would be to occasionally convert a stray
informational printk that seemed to be useful during early development
to a subsystem printk that hides it by default. The printk is not
actually _lost_ and is utmost trivial to activate it again, should the
need arise - which loss is why the "get rid of printks" patches are
opposed most of the time.
So i think we'll hit multiple birds with the same stone.
Ingo
--