]> www.infradead.org Git - users/jedix/linux-maple.git/commit
sparc64: Use LOCKDEP_SMALL, not PROVE_LOCKING_SMALL
authorDaniel Jordan <daniel.m.jordan@oracle.com>
Fri, 28 Apr 2017 15:49:21 +0000 (08:49 -0700)
committerShannon Nelson <shannon.nelson@oracle.com>
Wed, 31 May 2017 23:43:46 +0000 (16:43 -0700)
commit1869fb7fb7aa6b497b985e60b1cc31d6f50ea8c1
tree1ac238f37d5f66864077c31a326fbfbc754499e3
parent15f3fe839ef4df6ab6be7b30579e9c422a9839d9
sparc64: Use LOCKDEP_SMALL, not PROVE_LOCKING_SMALL

Orabug: 25830041

(Cherry-pick of upstream 395102db441abb8fd18fec5dd81428b5120232af)

CONFIG_PROVE_LOCKING_SMALL shrinks the memory usage of lockdep so the
kernel text, data, and bss fit in the locked TLB entries allotted for
the kernel, but this option is not set for every config that enables
lockdep.

A 4.10 kernel fails to boot with the console output

    Kernel: Using 8 locked TLB entries for main kernel image.
    hypervisor_tlb_lock[2000000:0:8000000071c007c3:1]: errors with f
    Program terminated

with these config options

    CONFIG_LOCKDEP=y
    CONFIG_LOCK_STAT=y
    CONFIG_PROVE_LOCKING=n

To fix, rename CONFIG_PROVE_LOCKING_SMALL to CONFIG_LOCKDEP_SMALL, and
enable this option with CONFIG_LOCKDEP=y so we get the reduced memory
usage every time lockdep is turned on.

Tested that CONFIG_LOCKDEP_SMALL is set to 'y' if and only if
CONFIG_LOCKDEP is set to 'y'.  When other lockdep-related config options
that select CONFIG_LOCKDEP are enabled (e.g. CONFIG_LOCK_STAT or
CONFIG_PROVE_LOCKING), verified that CONFIG_LOCKDEP_SMALL is also
enabled.

Fixes: 64740b06b7e5 ("config: Adding the new config parameter CONFIG_PROVE_LOCKING_SMALL for sparc")
Signed-off-by: Daniel Jordan <daniel.m.jordan@oracle.com>
Reviewed-by: Babu Moger <babu.moger@oracle.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Allen Pais <allen.pais@oracle.com>
arch/sparc/Kconfig
kernel/locking/lockdep_internals.h
lib/Kconfig.debug