• Randy Dunlap's avatar
    locking/lockdep: Reduce LOCKDEP dependency list · b8e00abe
    Randy Dunlap authored
    Some arches (um, sparc64, riscv, xtensa) cause a Kconfig warning for
    LOCKDEP.
    These arch-es select LOCKDEP_SUPPORT but they are not listed as one
    of the arch-es that LOCKDEP depends on.
    
    Since (16) arch-es define the Kconfig symbol LOCKDEP_SUPPORT if they
    intend to have LOCKDEP support, replace the awkward list of
    arch-es that LOCKDEP depends on with the LOCKDEP_SUPPORT symbol.
    
    But wait. LOCKDEP_SUPPORT is included in LOCK_DEBUGGING_SUPPORT,
    which is already a dependency here, so LOCKDEP_SUPPORT is redundant
    and not needed.
    That leaves the FRAME_POINTER dependency, but it is part of an
    expression like this:
    	depends on (A && B) && (FRAME_POINTER || B')
    where B' is a dependency of B so if B is true then B' is true
    and the value of FRAME_POINTER does not matter.
    Thus we can also delete the FRAME_POINTER dependency.
    
    Fixes this kconfig warning: (for um, sparc64, riscv, xtensa)
    
    WARNING: unmet direct dependencies detected for LOCKDEP
      Depends on [n]: DEBUG_KERNEL [=y] && LOCK_DEBUGGING_SUPPORT [=y] && (FRAME_POINTER [=n] || MIPS || PPC || S390 || MICROBLAZE || ARM || ARC || X86)
      Selected by [y]:
      - PROVE_LOCKING [=y] && DEBUG_KERNEL [=y] && LOCK_DEBUGGING_SUPPORT [=y]
      - LOCK_STAT [=y] && DEBUG_KERNEL [=y] && LOCK_DEBUGGING_SUPPORT [=y]
      - DEBUG_LOCK_ALLOC [=y] && DEBUG_KERNEL [=y] && LOCK_DEBUGGING_SUPPORT [=y]
    
    Fixes: 7d37cb2c ("lib: fix kconfig dependency on ARCH_WANT_FRAME_POINTERS")
    Signed-off-by: default avatarRandy Dunlap <rdunlap@infradead.org>
    Signed-off-by: default avatarPeter Zijlstra (Intel) <peterz@infradead.org>
    Acked-by: default avatarWaiman Long <longman@redhat.com>
    Link: https://lkml.kernel.org/r/20210524224150.8009-1-rdunlap@infradead.org
    b8e00abe
Kconfig.debug 84.7 KB