diff options
-rw-r--r-- | arch/i386/kernel/traps.c | 15 | ||||
-rw-r--r-- | arch/x86_64/kernel/traps.c | 21 |
2 files changed, 22 insertions, 14 deletions
diff --git a/arch/i386/kernel/traps.c b/arch/i386/kernel/traps.c index 2f6cb8276480..3c85c89f68d8 100644 --- a/arch/i386/kernel/traps.c +++ b/arch/i386/kernel/traps.c | |||
@@ -631,13 +631,15 @@ gp_in_kernel: | |||
631 | 631 | ||
632 | static void mem_parity_error(unsigned char reason, struct pt_regs * regs) | 632 | static void mem_parity_error(unsigned char reason, struct pt_regs * regs) |
633 | { | 633 | { |
634 | printk(KERN_EMERG "Uhhuh. NMI received. Dazed and confused, but trying " | 634 | printk(KERN_EMERG "Uhhuh. NMI received for unknown reason %02x on " |
635 | "to continue\n"); | 635 | "CPU %d.\n", reason, smp_processor_id()); |
636 | printk(KERN_EMERG "You probably have a hardware problem with your RAM " | 636 | printk(KERN_EMERG "You probably have a hardware problem with your RAM " |
637 | "chips\n"); | 637 | "chips\n"); |
638 | if (panic_on_unrecovered_nmi) | 638 | if (panic_on_unrecovered_nmi) |
639 | panic("NMI: Not continuing"); | 639 | panic("NMI: Not continuing"); |
640 | 640 | ||
641 | printk(KERN_EMERG "Dazed and confused, but trying to continue\n"); | ||
642 | |||
641 | /* Clear and disable the memory parity error line. */ | 643 | /* Clear and disable the memory parity error line. */ |
642 | clear_mem_error(reason); | 644 | clear_mem_error(reason); |
643 | } | 645 | } |
@@ -668,14 +670,13 @@ static void unknown_nmi_error(unsigned char reason, struct pt_regs * regs) | |||
668 | return; | 670 | return; |
669 | } | 671 | } |
670 | #endif | 672 | #endif |
671 | printk("Uhhuh. NMI received for unknown reason %02x on CPU %d.\n", | 673 | printk(KERN_EMERG "Uhhuh. NMI received for unknown reason %02x on " |
672 | reason, smp_processor_id()); | 674 | "CPU %d.\n", reason, smp_processor_id()); |
673 | printk("Dazed and confused, but trying to continue\n"); | 675 | printk(KERN_EMERG "Do you have a strange power saving mode enabled?\n"); |
674 | printk("Do you have a strange power saving mode enabled?\n"); | ||
675 | |||
676 | if (panic_on_unrecovered_nmi) | 676 | if (panic_on_unrecovered_nmi) |
677 | panic("NMI: Not continuing"); | 677 | panic("NMI: Not continuing"); |
678 | 678 | ||
679 | printk(KERN_EMERG "Dazed and confused, but trying to continue\n"); | ||
679 | } | 680 | } |
680 | 681 | ||
681 | static DEFINE_SPINLOCK(nmi_print_lock); | 682 | static DEFINE_SPINLOCK(nmi_print_lock); |
diff --git a/arch/x86_64/kernel/traps.c b/arch/x86_64/kernel/traps.c index b18829db2a6a..dae10df60926 100644 --- a/arch/x86_64/kernel/traps.c +++ b/arch/x86_64/kernel/traps.c | |||
@@ -730,10 +730,15 @@ asmlinkage void __kprobes do_general_protection(struct pt_regs * regs, | |||
730 | static __kprobes void | 730 | static __kprobes void |
731 | mem_parity_error(unsigned char reason, struct pt_regs * regs) | 731 | mem_parity_error(unsigned char reason, struct pt_regs * regs) |
732 | { | 732 | { |
733 | printk("Uhhuh. NMI received. Dazed and confused, but trying to continue\n"); | 733 | printk(KERN_EMERG "Uhhuh. NMI received for unknown reason %02x.\n", |
734 | printk("You probably have a hardware problem with your RAM chips\n"); | 734 | reason); |
735 | printk(KERN_EMERG "You probably have a hardware problem with your " | ||
736 | "RAM chips\n"); | ||
737 | |||
735 | if (panic_on_unrecovered_nmi) | 738 | if (panic_on_unrecovered_nmi) |
736 | panic("NMI: Not continuing"); | 739 | panic("NMI: Not continuing"); |
740 | |||
741 | printk(KERN_EMERG "Dazed and confused, but trying to continue\n"); | ||
737 | 742 | ||
738 | /* Clear and disable the memory parity error line. */ | 743 | /* Clear and disable the memory parity error line. */ |
739 | reason = (reason & 0xf) | 4; | 744 | reason = (reason & 0xf) | 4; |
@@ -756,13 +761,15 @@ io_check_error(unsigned char reason, struct pt_regs * regs) | |||
756 | 761 | ||
757 | static __kprobes void | 762 | static __kprobes void |
758 | unknown_nmi_error(unsigned char reason, struct pt_regs * regs) | 763 | unknown_nmi_error(unsigned char reason, struct pt_regs * regs) |
759 | { printk("Uhhuh. NMI received for unknown reason %02x.\n", reason); | 764 | { |
760 | printk("Dazed and confused, but trying to continue\n"); | 765 | printk(KERN_EMERG "Uhhuh. NMI received for unknown reason %02x.\n", |
761 | printk("Do you have a strange power saving mode enabled?\n"); | 766 | reason); |
767 | printk(KERN_EMERG "Do you have a strange power saving mode enabled?\n"); | ||
762 | 768 | ||
763 | if (panic_on_unrecovered_nmi) | 769 | if (panic_on_unrecovered_nmi) |
764 | panic("NMI: Not continuing"); | 770 | panic("NMI: Not continuing"); |
765 | 771 | ||
772 | printk(KERN_EMERG "Dazed and confused, but trying to continue\n"); | ||
766 | } | 773 | } |
767 | 774 | ||
768 | /* Runs on IST stack. This code must keep interrupts off all the time. | 775 | /* Runs on IST stack. This code must keep interrupts off all the time. |