diff options
Diffstat (limited to 'arch/i386/kernel/entry.S')
-rw-r--r-- | arch/i386/kernel/entry.S | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/arch/i386/kernel/entry.S b/arch/i386/kernel/entry.S index abb909793efc..3aad03839660 100644 --- a/arch/i386/kernel/entry.S +++ b/arch/i386/kernel/entry.S | |||
@@ -507,7 +507,7 @@ label: \ | |||
507 | pushl $__KERNEL_CS; \ | 507 | pushl $__KERNEL_CS; \ |
508 | pushl $sysenter_past_esp | 508 | pushl $sysenter_past_esp |
509 | 509 | ||
510 | ENTRY(debug) | 510 | KPROBE_ENTRY(debug) |
511 | cmpl $sysenter_entry,(%esp) | 511 | cmpl $sysenter_entry,(%esp) |
512 | jne debug_stack_correct | 512 | jne debug_stack_correct |
513 | FIX_STACK(12, debug_stack_correct, debug_esp_fix_insn) | 513 | FIX_STACK(12, debug_stack_correct, debug_esp_fix_insn) |
@@ -518,7 +518,7 @@ debug_stack_correct: | |||
518 | movl %esp,%eax # pt_regs pointer | 518 | movl %esp,%eax # pt_regs pointer |
519 | call do_debug | 519 | call do_debug |
520 | jmp ret_from_exception | 520 | jmp ret_from_exception |
521 | 521 | .previous .text | |
522 | /* | 522 | /* |
523 | * NMI is doubly nasty. It can happen _while_ we're handling | 523 | * NMI is doubly nasty. It can happen _while_ we're handling |
524 | * a debug fault, and the debug fault hasn't yet been able to | 524 | * a debug fault, and the debug fault hasn't yet been able to |
@@ -591,13 +591,14 @@ nmi_16bit_stack: | |||
591 | .long 1b,iret_exc | 591 | .long 1b,iret_exc |
592 | .previous | 592 | .previous |
593 | 593 | ||
594 | ENTRY(int3) | 594 | KPROBE_ENTRY(int3) |
595 | pushl $-1 # mark this as an int | 595 | pushl $-1 # mark this as an int |
596 | SAVE_ALL | 596 | SAVE_ALL |
597 | xorl %edx,%edx # zero error code | 597 | xorl %edx,%edx # zero error code |
598 | movl %esp,%eax # pt_regs pointer | 598 | movl %esp,%eax # pt_regs pointer |
599 | call do_int3 | 599 | call do_int3 |
600 | jmp ret_from_exception | 600 | jmp ret_from_exception |
601 | .previous .text | ||
601 | 602 | ||
602 | ENTRY(overflow) | 603 | ENTRY(overflow) |
603 | pushl $0 | 604 | pushl $0 |
@@ -631,17 +632,19 @@ ENTRY(stack_segment) | |||
631 | pushl $do_stack_segment | 632 | pushl $do_stack_segment |
632 | jmp error_code | 633 | jmp error_code |
633 | 634 | ||
634 | ENTRY(general_protection) | 635 | KPROBE_ENTRY(general_protection) |
635 | pushl $do_general_protection | 636 | pushl $do_general_protection |
636 | jmp error_code | 637 | jmp error_code |
638 | .previous .text | ||
637 | 639 | ||
638 | ENTRY(alignment_check) | 640 | ENTRY(alignment_check) |
639 | pushl $do_alignment_check | 641 | pushl $do_alignment_check |
640 | jmp error_code | 642 | jmp error_code |
641 | 643 | ||
642 | ENTRY(page_fault) | 644 | KPROBE_ENTRY(page_fault) |
643 | pushl $do_page_fault | 645 | pushl $do_page_fault |
644 | jmp error_code | 646 | jmp error_code |
647 | .previous .text | ||
645 | 648 | ||
646 | #ifdef CONFIG_X86_MCE | 649 | #ifdef CONFIG_X86_MCE |
647 | ENTRY(machine_check) | 650 | ENTRY(machine_check) |