[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20110930152517.GE19053@somewhere>
Date: Fri, 30 Sep 2011 17:25:23 +0200
From: Frederic Weisbecker <fweisbec@...il.com>
To: Josh Triplett <josh@...htriplett.org>
Cc: Adrian Bunk <bunk@...sta.de>,
Linus Torvalds <torvalds@...ux-foundation.org>,
linux-kernel@...r.kernel.org, Sam Ravnborg <sam@...nborg.org>
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.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists