Re: Please revert "debug: Make CONFIG_EXPERT selectCONFIG_DEBUG_KERNEL to unhide debug options"

From: Josh Triplett
Date: Fri Sep 30 2011 - 11:10:51 EST


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".

Also see Ingo Molnar's mail with Message-Id
<20110605093445.GA19927@xxxxxxx>, which explicitly recommended this
approach.

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