diff options
author | Ingo Molnar <mingo@elte.hu> | 2006-12-13 03:34:42 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@woody.osdl.org> | 2006-12-13 12:05:50 -0500 |
commit | 27c3b23226fc649de47e4886ccbf994482f388ba (patch) | |
tree | 43b0da769b52a709f2f408c8dc791a70fe9fc9fe /kernel/lockdep.c | |
parent | 33e94e960b57497fe7fd9493080210b6d87e88e6 (diff) |
[PATCH] lockdep: use chain hash on CONFIG_DEBUG_LOCKDEP too
CONFIG_DEBUG_LOCKDEP is unacceptably slow because it does not utilize
the chain-hash. Turn the chain-hash back on in this case too.
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'kernel/lockdep.c')
-rw-r--r-- | kernel/lockdep.c | 8 |
1 files changed, 0 insertions, 8 deletions
diff --git a/kernel/lockdep.c b/kernel/lockdep.c index c4ffd3c1dec4..69e92c6b0472 100644 --- a/kernel/lockdep.c +++ b/kernel/lockdep.c | |||
@@ -1276,14 +1276,6 @@ static inline int lookup_chain_cache(u64 chain_key, struct lock_class *class) | |||
1276 | if (chain->chain_key == chain_key) { | 1276 | if (chain->chain_key == chain_key) { |
1277 | cache_hit: | 1277 | cache_hit: |
1278 | debug_atomic_inc(&chain_lookup_hits); | 1278 | debug_atomic_inc(&chain_lookup_hits); |
1279 | /* | ||
1280 | * In the debugging case, force redundant checking | ||
1281 | * by returning 1: | ||
1282 | */ | ||
1283 | #ifdef CONFIG_DEBUG_LOCKDEP | ||
1284 | __raw_spin_lock(&hash_lock); | ||
1285 | return 1; | ||
1286 | #endif | ||
1287 | if (very_verbose(class)) | 1279 | if (very_verbose(class)) |
1288 | printk("\nhash chain already cached, key: %016Lx tail class: [%p] %s\n", chain_key, class->key, class->name); | 1280 | printk("\nhash chain already cached, key: %016Lx tail class: [%p] %s\n", chain_key, class->key, class->name); |
1289 | return 0; | 1281 | return 0; |