diff options
Diffstat (limited to 'arch')
-rw-r--r-- | arch/s390/kernel/nmi.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/arch/s390/kernel/nmi.c b/arch/s390/kernel/nmi.c index 4bfdc421d7e9..28cf196ba775 100644 --- a/arch/s390/kernel/nmi.c +++ b/arch/s390/kernel/nmi.c | |||
@@ -10,6 +10,7 @@ | |||
10 | 10 | ||
11 | #include <linux/init.h> | 11 | #include <linux/init.h> |
12 | #include <linux/errno.h> | 12 | #include <linux/errno.h> |
13 | #include <linux/hardirq.h> | ||
13 | #include <linux/time.h> | 14 | #include <linux/time.h> |
14 | #include <linux/module.h> | 15 | #include <linux/module.h> |
15 | #include <asm/lowcore.h> | 16 | #include <asm/lowcore.h> |
@@ -253,7 +254,7 @@ void notrace s390_do_machine_check(struct pt_regs *regs) | |||
253 | struct mci *mci; | 254 | struct mci *mci; |
254 | int umode; | 255 | int umode; |
255 | 256 | ||
256 | lockdep_off(); | 257 | nmi_enter(); |
257 | s390_idle_check(); | 258 | s390_idle_check(); |
258 | 259 | ||
259 | mci = (struct mci *) &S390_lowcore.mcck_interruption_code; | 260 | mci = (struct mci *) &S390_lowcore.mcck_interruption_code; |
@@ -363,7 +364,7 @@ void notrace s390_do_machine_check(struct pt_regs *regs) | |||
363 | mcck->warning = 1; | 364 | mcck->warning = 1; |
364 | set_thread_flag(TIF_MCCK_PENDING); | 365 | set_thread_flag(TIF_MCCK_PENDING); |
365 | } | 366 | } |
366 | lockdep_on(); | 367 | nmi_exit(); |
367 | } | 368 | } |
368 | 369 | ||
369 | static int __init machine_check_init(void) | 370 | static int __init machine_check_init(void) |