(Note: Patch also attached because the inline version is certain to get
line wrapped.)

Stack pointer comparisons for the NMI on debug stack check/fixup were
incorrect.

Signed-off-by: Jan Beulich <[EMAIL PROTECTED]>

---
/home/jbeulich/tmp/linux-2.6.13/arch/i386/kernel/entry.S        2005-08-29
01:41:01.000000000 +0200
+++ 2.6.13/arch/i386/kernel/entry.S     2005-08-29 09:50:38.000000000
+0200
@@ -557,11 +557,10 @@ nmi_stack_fixup:
 nmi_debug_stack_check:
        cmpw $__KERNEL_CS,16(%esp)
        jne nmi_stack_correct
-       cmpl $debug - 1,(%esp)
-       jle nmi_stack_correct
+       cmpl $debug,(%esp)
+       jb nmi_stack_correct
        cmpl $debug_esp_fix_insn,(%esp)
-       jle nmi_debug_stack_fixup
-nmi_debug_stack_fixup:
+       ja nmi_stack_correct
        FIX_STACK(24,nmi_stack_correct, 1)
        jmp nmi_stack_correct
 

Attachment: linux-2.6.13-i386-nmi.patch
Description: Binary data

Reply via email to