diff options
| -rw-r--r-- | arch/x86_64/kernel/mce.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/arch/x86_64/kernel/mce.c b/arch/x86_64/kernel/mce.c index b8f28ebdce26..13a2eada6c95 100644 --- a/arch/x86_64/kernel/mce.c +++ b/arch/x86_64/kernel/mce.c | |||
| @@ -24,6 +24,7 @@ | |||
| 24 | #include <asm/mce.h> | 24 | #include <asm/mce.h> |
| 25 | #include <asm/kdebug.h> | 25 | #include <asm/kdebug.h> |
| 26 | #include <asm/uaccess.h> | 26 | #include <asm/uaccess.h> |
| 27 | #include <asm/smp.h> | ||
| 27 | 28 | ||
| 28 | #define MISC_MCELOG_MINOR 227 | 29 | #define MISC_MCELOG_MINOR 227 |
| 29 | #define NR_BANKS 6 | 30 | #define NR_BANKS 6 |
| @@ -178,7 +179,7 @@ void do_machine_check(struct pt_regs * regs, long error_code) | |||
| 178 | return; | 179 | return; |
| 179 | 180 | ||
| 180 | memset(&m, 0, sizeof(struct mce)); | 181 | memset(&m, 0, sizeof(struct mce)); |
| 181 | m.cpu = hard_smp_processor_id(); | 182 | m.cpu = safe_smp_processor_id(); |
| 182 | rdmsrl(MSR_IA32_MCG_STATUS, m.mcgstatus); | 183 | rdmsrl(MSR_IA32_MCG_STATUS, m.mcgstatus); |
| 183 | if (!(m.mcgstatus & MCG_STATUS_RIPV)) | 184 | if (!(m.mcgstatus & MCG_STATUS_RIPV)) |
| 184 | kill_it = 1; | 185 | kill_it = 1; |
