debug_locks.h: make warning more verbose
authorJames Hogan <james.hogan@imgtec.com>
Mon, 29 Apr 2013 22:06:06 +0000 (15:06 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Mon, 29 Apr 2013 22:54:27 +0000 (15:54 -0700)
The WARN_ON(1) in DEBUG_LOCKS_WARN_ON is surprisingly awkward to track
down when it's hit, as it's usually buried in macros, causing multiple
instances to land on the same line number.

This patch makes it more useful by switching to:

    WARN(1, "DEBUG_LOCKS_WARN_ON(%s)", #c);

so that the particular DEBUG_LOCKS_WARN_ON is more easily identified and
grep'd for.  For example:

    WARNING: at kernel/mutex.c:198 _mutex_lock_nested+0x31c/0x380()
    DEBUG_LOCKS_WARN_ON(l->magic != l)

Signed-off-by: James Hogan <james.hogan@imgtec.com>
Cc: Paul Gortmaker <paul.gortmaker@windriver.com>
Cc: David Howells <dhowells@redhat.com>
Cc: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
include/linux/debug_locks.h

index 3bd46f7..21ca773 100644 (file)
@@ -27,7 +27,7 @@ extern int debug_locks_off(void);
                                                                        \
        if (!oops_in_progress && unlikely(c)) {                         \
                if (debug_locks_off() && !debug_locks_silent)           \
-                       WARN_ON(1);                                     \
+                       WARN(1, "DEBUG_LOCKS_WARN_ON(%s)", #c);         \
                __ret = 1;                                              \
        }                                                               \
        __ret;                                                          \