diff options
| -rw-r--r-- | arch/powerpc/kernel/traps.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/arch/powerpc/kernel/traps.c b/arch/powerpc/kernel/traps.c index f1629a8acc4b..47904cd1ff46 100644 --- a/arch/powerpc/kernel/traps.c +++ b/arch/powerpc/kernel/traps.c | |||
| @@ -763,12 +763,17 @@ void machine_check_exception(struct pt_regs *regs) | |||
| 763 | if (check_io_access(regs)) | 763 | if (check_io_access(regs)) |
| 764 | goto bail; | 764 | goto bail; |
| 765 | 765 | ||
| 766 | die("Machine check", regs, SIGBUS); | ||
| 767 | |||
| 768 | /* Must die if the interrupt is not recoverable */ | 766 | /* Must die if the interrupt is not recoverable */ |
| 769 | if (!(regs->msr & MSR_RI)) | 767 | if (!(regs->msr & MSR_RI)) |
| 770 | nmi_panic(regs, "Unrecoverable Machine check"); | 768 | nmi_panic(regs, "Unrecoverable Machine check"); |
| 771 | 769 | ||
| 770 | if (!nested) | ||
| 771 | nmi_exit(); | ||
| 772 | |||
| 773 | die("Machine check", regs, SIGBUS); | ||
| 774 | |||
| 775 | return; | ||
| 776 | |||
| 772 | bail: | 777 | bail: |
| 773 | if (!nested) | 778 | if (!nested) |
| 774 | nmi_exit(); | 779 | nmi_exit(); |
