|
@@ -1017,7 +1017,7 @@ ENTRY(nmi)
|
|
|
|
|
|
/* Not on SYSENTER stack. */
|
|
|
call do_nmi
|
|
|
- jmp .Lrestore_all_notrace
|
|
|
+ jmp .Lnmi_return
|
|
|
|
|
|
.Lnmi_from_sysenter_stack:
|
|
|
/*
|
|
@@ -1028,7 +1028,11 @@ ENTRY(nmi)
|
|
|
movl PER_CPU_VAR(cpu_current_top_of_stack), %esp
|
|
|
call do_nmi
|
|
|
movl %ebx, %esp
|
|
|
- jmp .Lrestore_all_notrace
|
|
|
+
|
|
|
+.Lnmi_return:
|
|
|
+ CHECK_AND_APPLY_ESPFIX
|
|
|
+ RESTORE_REGS 4
|
|
|
+ jmp .Lirq_return
|
|
|
|
|
|
#ifdef CONFIG_X86_ESPFIX32
|
|
|
.Lnmi_espfix_stack:
|