Messages in this thread | | | Date | Fri, 30 Sep 2011 17:25:23 +0200 | From | Frederic Weisbecker <> | Subject | Re: Please revert "debug: Make CONFIG_EXPERT select CONFIG_DEBUG_KERNEL to unhide debug options" |
| |
On Fri, Sep 30, 2011 at 08:05:19AM -0700, Josh Triplett wrote: > On Fri, Sep 30, 2011 at 04:42:45PM +0300, Adrian Bunk wrote: > > I was just wondering why I was asked about all the debug options when I > > tried 3.1-rc8, and that was due to commit f505c553 (debug: Make > > CONFIG_EXPERT select CONFIG_DEBUG_KERNEL to unhide debug options), > > the full commit is below. > > > > It is wrong, and the author does not seem to understand how Kconfig works. > > > > The commit message is: > > > > Several debugging options currently default to y, such as > > CONFIG_DEBUG_BUGVERBOSE and CONFIG_DEBUG_RODATA. Embedded users > > might want to turn those options off to save space; however, > > turning them off requires turning on CONFIG_DEBUG_KERNEL to > > unhide them. Since CONFIG_DEBUG_KERNEL exists specifically to > > unhide debugging options, and CONFIG_EXPERT exists specifically > > to unhide options potentially needed by experts and/or embedded > > users, make CONFIG_EXPERT automatically imply > > CONFIG_DEBUG_KERNEL. > > > > > > Let me point at the obvious fact that both CONFIG_DEBUG_BUGVERBOSE and > > CONFIG_DEBUG_RODATA do depend on DEBUG_KERNEL, and are contrary to the > > claim of the author of this patch never enabled with > > CONFIG_DEBUG_KERNEL=n. [1] > > Not true: > > ~/src/linux-2.6$ rm .config > ~/src/linux-2.6$ make allnoconfig > HOSTCC scripts/basic/fixdep > HOSTCC scripts/kconfig/conf.o > HOSTCC scripts/kconfig/zconf.tab.o > HOSTLD scripts/kconfig/conf > scripts/kconfig/conf --allnoconfig Kconfig > # > # configuration written to .config > # > ~/src/linux-2.6$ grep BUGVERBOSE .config > CONFIG_DEBUG_BUGVERBOSE=y > ~/src/linux-2.6$ grep DEBUG_KERNEL .config > # CONFIG_DEBUG_KERNEL is not set > > DEBUG_BUGVERBOSE does not depend on DEBUG_KERNEL; it just only shows up > with DEBUG_KERNEL (and EXPERT) set. The *description* has a conditional > on DEBUG_KERNEL and EXPERT: > > config DEBUG_BUGVERBOSE > bool "Verbose BUG() reporting (adds 70K)" if DEBUG_KERNEL && EXPERT > > That doesn't mean the same thing as "depends on DEBUG_KERNEL".
Indeed.
But for DEBUG_RODATA it is the case. That said given the issue described with DEBUG_BUGVERSBOSE, it makes only the changelog buggy, not the patch.
Also the patch was supposed to have a broader cleanup effect: https://lkml.org/lkml/2011/6/6/641
But we applied an earlier version by accident.
All in one I think we chose a wrong way to fix the issue. It's annoying to have all the configs that are only visible with CONFIG_EXPERT spread all around in random config menu.
Anything that has "if CONFIG_EXPERT" should probably be moved under the CONFIG_EXPERT menu so that it's visible and found right away.
| |