[PATCH v2 2/2] lockdep: Keep the static allocations small for PROVE_LOCKING_SMALL
Reduce the size of data structure for lockdep entries half if PROVE_LOCKING_SMALL if defined. This is used for sparc. This config variable is disabled by default. Signed-off-by: Babu Moger--- kernel/locking/lockdep_internals.h | 13 ++--- 1 files changed, 10 insertions(+), 3 deletions(-) diff --git a/kernel/locking/lockdep_internals.h b/kernel/locking/lockdep_internals.h index 51c4b24..7d364a6 100644 --- a/kernel/locking/lockdep_internals.h +++ b/kernel/locking/lockdep_internals.h @@ -54,18 +54,25 @@ enum { * table (if it's not there yet), and we check it for lock order * conflicts and deadlocks. */ +#ifdef CONFIG_PROVE_LOCKING_SMALL +#define MAX_LOCKDEP_ENTRIES16384UL +#define MAX_LOCKDEP_CHAINS_BITS15 +#define MAX_STACK_TRACE_ENTRIES262144UL +#else #define MAX_LOCKDEP_ENTRIES32768UL #define MAX_LOCKDEP_CHAINS_BITS16 -#define MAX_LOCKDEP_CHAINS (1UL << MAX_LOCKDEP_CHAINS_BITS) - -#define MAX_LOCKDEP_CHAIN_HLOCKS (MAX_LOCKDEP_CHAINS*5) /* * Stack-trace: tightly packed array of stack backtrace * addresses. Protected by the hash_lock. */ #define MAX_STACK_TRACE_ENTRIES524288UL +#endif + +#define MAX_LOCKDEP_CHAINS (1UL << MAX_LOCKDEP_CHAINS_BITS) + +#define MAX_LOCKDEP_CHAIN_HLOCKS (MAX_LOCKDEP_CHAINS*5) extern struct list_head all_lock_classes; extern struct lock_chain lock_chains[]; -- 1.7.1
[PATCH v2 2/2] lockdep: Keep the static allocations small for PROVE_LOCKING_SMALL
Reduce the size of data structure for lockdep entries half if PROVE_LOCKING_SMALL if defined. This is used for sparc. This config variable is disabled by default. Signed-off-by: Babu Moger --- kernel/locking/lockdep_internals.h | 13 ++--- 1 files changed, 10 insertions(+), 3 deletions(-) diff --git a/kernel/locking/lockdep_internals.h b/kernel/locking/lockdep_internals.h index 51c4b24..7d364a6 100644 --- a/kernel/locking/lockdep_internals.h +++ b/kernel/locking/lockdep_internals.h @@ -54,18 +54,25 @@ enum { * table (if it's not there yet), and we check it for lock order * conflicts and deadlocks. */ +#ifdef CONFIG_PROVE_LOCKING_SMALL +#define MAX_LOCKDEP_ENTRIES16384UL +#define MAX_LOCKDEP_CHAINS_BITS15 +#define MAX_STACK_TRACE_ENTRIES262144UL +#else #define MAX_LOCKDEP_ENTRIES32768UL #define MAX_LOCKDEP_CHAINS_BITS16 -#define MAX_LOCKDEP_CHAINS (1UL << MAX_LOCKDEP_CHAINS_BITS) - -#define MAX_LOCKDEP_CHAIN_HLOCKS (MAX_LOCKDEP_CHAINS*5) /* * Stack-trace: tightly packed array of stack backtrace * addresses. Protected by the hash_lock. */ #define MAX_STACK_TRACE_ENTRIES524288UL +#endif + +#define MAX_LOCKDEP_CHAINS (1UL << MAX_LOCKDEP_CHAINS_BITS) + +#define MAX_LOCKDEP_CHAIN_HLOCKS (MAX_LOCKDEP_CHAINS*5) extern struct list_head all_lock_classes; extern struct lock_chain lock_chains[]; -- 1.7.1