The CONFIG_DEBUG_LIST option is normally meant for kernel developers
rather than production machines and is guarded by CONFIG_DEBUG_KERNEL.

In contrast, the newly added CONFIG_BUG_ON_DATA_CORRUPTION is meant
for security hardening and may be used on systems that intentionally
do not enable CONFIG_DEBUG_KERNEL. In this configuration, we get
a warning from Kconfig about the mismatched dependencies:

warning: (BUG_ON_DATA_CORRUPTION) selects DEBUG_LIST which has unmet direct 
dependencies (DEBUG_KERNEL)

This annotates the DEBUG_LIST option to be selectable by
BUG_ON_DATA_CORRUPTION when DEBUG_KERNEL is disabled.

Signed-off-by: Arnd Bergmann <[email protected]>
Fixes: 40cd725cfc7f ("bug: Provide toggle for BUG on data corruption")
---
 lib/Kconfig.debug | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/lib/Kconfig.debug b/lib/Kconfig.debug
index 6f5ca0530e47..dd40d4ad9063 100644
--- a/lib/Kconfig.debug
+++ b/lib/Kconfig.debug
@@ -1229,7 +1229,7 @@ config DEBUG_BUGVERBOSE
 
 config DEBUG_LIST
        bool "Debug linked list manipulation"
-       depends on DEBUG_KERNEL
+       depends on DEBUG_KERNEL || BUG_ON_DATA_CORRUPTION
        help
          Enable this to turn on extended checks in the linked-list
          walking routines.
-- 
2.9.0

Reply via email to