aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHeiko Carstens <heiko.carstens@de.ibm.com>2006-07-03 00:25:00 -0700
committerLinus Torvalds <torvalds@g5.osdl.org>2006-07-03 15:27:05 -0700
commit8e9ccae6ee2bb19b7752b7d412e1bbbaf28e7fe1 (patch)
tree85449e3b5cacd69cefdd353b1767d4fac13f1a80
parent6205120044bb75ca06019491d1aa0e727fdd35be (diff)
[PATCH] lockdep: s390 turn validator off in machine-check handler
Machine checks on s390 are always enabled (except in the machine check handler itself). Therefore use lockdep_off()/on() in the machine check handler to avoid deadlocks in the lock validator. Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com> Acked-by: Ingo Molnar <mingo@elte.hu> Cc: Martin Schwidefsky <schwidefsky@de.ibm.com> Cc: Arjan van de Ven <arjan@infradead.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-rw-r--r--drivers/s390/s390mach.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/s390/s390mach.c b/drivers/s390/s390mach.c
index 432136f96e6..ffb3677e354 100644
--- a/drivers/s390/s390mach.c
+++ b/drivers/s390/s390mach.c
@@ -378,6 +378,8 @@ s390_do_machine_check(struct pt_regs *regs)
struct mcck_struct *mcck;
int umode;
+ lockdep_off();
+
mci = (struct mci *) &S390_lowcore.mcck_interruption_code;
mcck = &__get_cpu_var(cpu_mcck);
umode = user_mode(regs);
@@ -482,6 +484,7 @@ s390_do_machine_check(struct pt_regs *regs)
mcck->warning = 1;
set_thread_flag(TIF_MCCK_PENDING);
}
+ lockdep_on();
}
/*