diff options
-rw-r--r-- | include/linux/debug_locks.h | 2 | ||||
-rw-r--r-- | kernel/mutex-debug.c | 3 | ||||
-rw-r--r-- | lib/locking-selftest.c | 2 |
3 files changed, 6 insertions, 1 deletions
diff --git a/include/linux/debug_locks.h b/include/linux/debug_locks.h index 952bee79a8f3..a1c10b0c4cf0 100644 --- a/include/linux/debug_locks.h +++ b/include/linux/debug_locks.h | |||
@@ -24,7 +24,7 @@ extern int debug_locks_off(void); | |||
24 | int __ret = 0; \ | 24 | int __ret = 0; \ |
25 | \ | 25 | \ |
26 | if (unlikely(c)) { \ | 26 | if (unlikely(c)) { \ |
27 | if (debug_locks_off()) \ | 27 | if (debug_locks_silent || debug_locks_off()) \ |
28 | WARN_ON(1); \ | 28 | WARN_ON(1); \ |
29 | __ret = 1; \ | 29 | __ret = 1; \ |
30 | } \ | 30 | } \ |
diff --git a/kernel/mutex-debug.c b/kernel/mutex-debug.c index 18651641a7b5..841539d72c55 100644 --- a/kernel/mutex-debug.c +++ b/kernel/mutex-debug.c | |||
@@ -77,6 +77,9 @@ void mutex_remove_waiter(struct mutex *lock, struct mutex_waiter *waiter, | |||
77 | 77 | ||
78 | void debug_mutex_unlock(struct mutex *lock) | 78 | void debug_mutex_unlock(struct mutex *lock) |
79 | { | 79 | { |
80 | if (unlikely(!debug_locks)) | ||
81 | return; | ||
82 | |||
80 | DEBUG_LOCKS_WARN_ON(lock->owner != current_thread_info()); | 83 | DEBUG_LOCKS_WARN_ON(lock->owner != current_thread_info()); |
81 | DEBUG_LOCKS_WARN_ON(lock->magic != lock); | 84 | DEBUG_LOCKS_WARN_ON(lock->magic != lock); |
82 | DEBUG_LOCKS_WARN_ON(!lock->wait_list.prev && !lock->wait_list.next); | 85 | DEBUG_LOCKS_WARN_ON(!lock->wait_list.prev && !lock->wait_list.next); |
diff --git a/lib/locking-selftest.c b/lib/locking-selftest.c index 7945787f439a..280332c1827c 100644 --- a/lib/locking-selftest.c +++ b/lib/locking-selftest.c | |||
@@ -963,7 +963,9 @@ static void dotest(void (*testcase_fn)(void), int expected, int lockclass_mask) | |||
963 | printk("failed|"); | 963 | printk("failed|"); |
964 | } else { | 964 | } else { |
965 | unexpected_testcase_failures++; | 965 | unexpected_testcase_failures++; |
966 | |||
966 | printk("FAILED|"); | 967 | printk("FAILED|"); |
968 | dump_stack(); | ||
967 | } | 969 | } |
968 | } else { | 970 | } else { |
969 | testcase_successes++; | 971 | testcase_successes++; |