diff options
author | Jason Wessel <jason.wessel@windriver.com> | 2010-08-05 10:22:24 -0400 |
---|---|---|
committer | Jason Wessel <jason.wessel@windriver.com> | 2010-08-05 10:22:24 -0400 |
commit | eac790059b22883763759aeb468ff862bae4627e (patch) | |
tree | 912fbcca1887a75b47c19020fb4acc79fb6ce3f9 /mm/highmem.c | |
parent | 9264b278be42c031dc76517a0d4bb154f5dcf470 (diff) |
mm,kdb,kgdb: Add a debug reference for the kdb kmap usage
The kdb kmap should never get used outside of the kernel debugger
exception context.
Signed-off-by: Jason Wessel<jason.wessel@windriver.com>
CC: Andrew Morton <akpm@linux-foundation.org>
CC: Ingo Molnar <mingo@elte.hu>
CC: linux-mm@kvack.org
Diffstat (limited to 'mm/highmem.c')
-rw-r--r-- | mm/highmem.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/mm/highmem.c b/mm/highmem.c index 66baa20f78f5..7a0aa1be4993 100644 --- a/mm/highmem.c +++ b/mm/highmem.c | |||
@@ -26,6 +26,7 @@ | |||
26 | #include <linux/init.h> | 26 | #include <linux/init.h> |
27 | #include <linux/hash.h> | 27 | #include <linux/hash.h> |
28 | #include <linux/highmem.h> | 28 | #include <linux/highmem.h> |
29 | #include <linux/kgdb.h> | ||
29 | #include <asm/tlbflush.h> | 30 | #include <asm/tlbflush.h> |
30 | 31 | ||
31 | /* | 32 | /* |
@@ -470,6 +471,12 @@ void debug_kmap_atomic(enum km_type type) | |||
470 | warn_count--; | 471 | warn_count--; |
471 | } | 472 | } |
472 | } | 473 | } |
474 | #ifdef CONFIG_KGDB_KDB | ||
475 | if (unlikely(type == KM_KDB && atomic_read(&kgdb_active) == -1)) { | ||
476 | WARN_ON(1); | ||
477 | warn_count--; | ||
478 | } | ||
479 | #endif /* CONFIG_KGDB_KDB */ | ||
473 | } | 480 | } |
474 | 481 | ||
475 | #endif | 482 | #endif |