[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>
This commit is contained in:
Heiko Carstens 2006-07-03 00:25:00 -07:00 committed by Linus Torvalds
parent 6205120044
commit 8e9ccae6ee
1 changed files with 3 additions and 0 deletions

View File

@ -378,6 +378,8 @@ s390_do_machine_check(struct pt_regs *regs)
struct mcck_struct *mcck; struct mcck_struct *mcck;
int umode; int umode;
lockdep_off();
mci = (struct mci *) &S390_lowcore.mcck_interruption_code; mci = (struct mci *) &S390_lowcore.mcck_interruption_code;
mcck = &__get_cpu_var(cpu_mcck); mcck = &__get_cpu_var(cpu_mcck);
umode = user_mode(regs); umode = user_mode(regs);
@ -482,6 +484,7 @@ s390_do_machine_check(struct pt_regs *regs)
mcck->warning = 1; mcck->warning = 1;
set_thread_flag(TIF_MCCK_PENDING); set_thread_flag(TIF_MCCK_PENDING);
} }
lockdep_on();
} }
/* /*