summaryrefslogtreecommitdiffstats
path: root/kernel
diff options
context:
space:
mode:
authorIngo Molnar <mingo@elte.hu>2007-12-07 19:02:47 +0100
committerIngo Molnar <mingo@elte.hu>2007-12-07 19:02:47 +0100
commit5f9fa8a62d6a98f5cb2ee2e00b85bfe95e45888d (patch)
treecb1a27380131465adc0ba372ec9f4869beb520e7 /kernel
parentMerge branch 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/... (diff)
downloadlinux-5f9fa8a62d6a98f5cb2ee2e00b85bfe95e45888d.tar.xz
linux-5f9fa8a62d6a98f5cb2ee2e00b85bfe95e45888d.zip
lockdep: make cli/sti annotation warnings clearer
make cli/sti annotation warnings easier to interpret. Signed-off-by: Ingo Molnar <mingo@elte.hu> Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
Diffstat (limited to 'kernel')
-rw-r--r--kernel/lockdep.c13
1 files changed, 9 insertions, 4 deletions
diff --git a/kernel/lockdep.c b/kernel/lockdep.c
index 0f389621bb6b..723bd9f92556 100644
--- a/kernel/lockdep.c
+++ b/kernel/lockdep.c
@@ -2654,10 +2654,15 @@ static void check_flags(unsigned long flags)
if (!debug_locks)
return;
- if (irqs_disabled_flags(flags))
- DEBUG_LOCKS_WARN_ON(current->hardirqs_enabled);
- else
- DEBUG_LOCKS_WARN_ON(!current->hardirqs_enabled);
+ if (irqs_disabled_flags(flags)) {
+ if (DEBUG_LOCKS_WARN_ON(current->hardirqs_enabled)) {
+ printk("possible reason: unannotated irqs-off.\n");
+ }
+ } else {
+ if (DEBUG_LOCKS_WARN_ON(!current->hardirqs_enabled)) {
+ printk("possible reason: unannotated irqs-on.\n");
+ }
+ }
/*
* We dont accurately track softirq state in e.g.