A previous version of this patch[1] accidentally introduced an unmet
dependency bug, because DRM_I915_DEBUG selects
DRM_I915_SW_FENCE_DEBUG_OBJECTS without also depending on DEBUG_OBJECTS.

DRM_I915_SW_FENCE_DEBUG_OBJECTS currently selects DEBUG_OBJECTS even though
DEBUG_OBJECTS is visible to users. Other config options use 'depends on'
for DEBUG_OBJECTS, so let's do the same here.

This select-visible Kconfig misusage was detected by Kconfirm, a static
analysis tool for Kconfig.

Link 1: https://lore.kernel.org/all/[email protected]/

Signed-off-by: Julian Braha <[email protected]>
---
v2:
- select PREEMPT_COUNT, avoid recursive dependency

 drivers/gpu/drm/i915/Kconfig.debug | 3 ++-
 lib/Kconfig.debug                  | 2 +-
 2 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/drivers/gpu/drm/i915/Kconfig.debug 
b/drivers/gpu/drm/i915/Kconfig.debug
index 3562a02ef7ad..657cdf49181e 100644
--- a/drivers/gpu/drm/i915/Kconfig.debug
+++ b/drivers/gpu/drm/i915/Kconfig.debug
@@ -35,6 +35,7 @@ config DRM_I915_REPLAY_GPU_HANGS_API
 
 config DRM_I915_DEBUG
        bool "Enable additional driver debugging"
+       depends on DEBUG_OBJECTS
        depends on DRM_I915
        depends on EXPERT # only for developers
        depends on !COMPILE_TEST # never built by robots
@@ -153,7 +154,7 @@ config DRM_I915_TRACE_GTT
 config DRM_I915_SW_FENCE_DEBUG_OBJECTS
        bool "Enable additional driver debugging for fence objects"
        depends on DRM_I915
-       select DEBUG_OBJECTS
+       depends on DEBUG_OBJECTS
        default n
        help
          Choose this option to turn on extra driver debugging that may affect
diff --git a/lib/Kconfig.debug b/lib/Kconfig.debug
index 8ff5adcfe1e0..6501b7040706 100644
--- a/lib/Kconfig.debug
+++ b/lib/Kconfig.debug
@@ -760,7 +760,7 @@ source "mm/Kconfig.debug"
 
 config DEBUG_OBJECTS
        bool "Debug object operations"
-       depends on PREEMPT_COUNT || !DEFERRED_STRUCT_PAGE_INIT
+       select PREEMPT_COUNT if !DEFERRED_STRUCT_PAGE_INIT
        depends on DEBUG_KERNEL
        help
          If you say Y here, additional code will be inserted into the
-- 
2.54.0

Reply via email to