[PATCHv4] Make CONFIG_EXPERT select CONFIG_DEBUG_KERNEL to unhidedebug options

From: Josh Triplett
Date: Mon Jun 06 2011 - 18:08:31 EST


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.

Since EXPERT now implies DEBUG_KERNEL, change debugging options that
reference DEBUG_KERNEL && EXPERT to just reference EXPERT.

Signed-off-by: Josh Triplett <josh@xxxxxxxxxxxxxxxx>
---
v4: Avoid semantic changes, by changing DEBUG_KERNEL && EXPERT to EXPERT
rather than to DEBUG_KERNEL. This avoids exposing debug options that
only experts should turn off, such as DEBUG_BUGVERBOSE.

A subsequent patch should probably go through and change the various
"default !EXPERT" lines to "default y", since enabling CONFIG_EXPERT
should not directly change anything.

arch/tile/Kconfig.debug | 2 +-
init/Kconfig | 2 ++
lib/Kconfig.debug | 2 +-
3 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/arch/tile/Kconfig.debug b/arch/tile/Kconfig.debug
index ddbfc33..1d31246 100644
--- a/arch/tile/Kconfig.debug
+++ b/arch/tile/Kconfig.debug
@@ -3,7 +3,7 @@ menu "Kernel hacking"
source "lib/Kconfig.debug"

config EARLY_PRINTK
- bool "Early printk" if EXPERT && DEBUG_KERNEL
+ bool "Early printk" if EXPERT
default y
help
Write kernel log output directly via the hypervisor console.
diff --git a/init/Kconfig b/init/Kconfig
index ebafac4..14370d3 100644
--- a/init/Kconfig
+++ b/init/Kconfig
@@ -909,6 +909,8 @@ config ANON_INODES

menuconfig EXPERT
bool "Configure standard kernel features (expert users)"
+ # Unhide debug options, to make the on-by-default options visible
+ select DEBUG_KERNEL
help
This option allows certain base kernel options and settings
to be disabled or tweaked. This is for specialized
diff --git a/lib/Kconfig.debug b/lib/Kconfig.debug
index dd373c8..9a00361 100644
--- a/lib/Kconfig.debug
+++ b/lib/Kconfig.debug
@@ -694,7 +694,7 @@ config DEBUG_HIGHMEM
Disable for production systems.

config DEBUG_BUGVERBOSE
- bool "Verbose BUG() reporting (adds 70K)" if DEBUG_KERNEL && EXPERT
+ bool "Verbose BUG() reporting (adds 70K)" if EXPERT
depends on BUG
depends on ARM || AVR32 || M32R || M68K || SPARC32 || SPARC64 || \
FRV || SUPERH || GENERIC_BUG || BLACKFIN || MN10300 || TILE
--
1.7.5.3

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