diff options
| -rw-r--r-- | arch/x86/kernel/cpu/mcheck/mce_64.c | 18 |
1 files changed, 10 insertions, 8 deletions
diff --git a/arch/x86/kernel/cpu/mcheck/mce_64.c b/arch/x86/kernel/cpu/mcheck/mce_64.c index 9a699ed03598..e07e8c068ae0 100644 --- a/arch/x86/kernel/cpu/mcheck/mce_64.c +++ b/arch/x86/kernel/cpu/mcheck/mce_64.c | |||
| @@ -49,7 +49,7 @@ static int banks; | |||
| 49 | static unsigned long bank[NR_BANKS] = { [0 ... NR_BANKS-1] = ~0UL }; | 49 | static unsigned long bank[NR_BANKS] = { [0 ... NR_BANKS-1] = ~0UL }; |
| 50 | static unsigned long notify_user; | 50 | static unsigned long notify_user; |
| 51 | static int rip_msr; | 51 | static int rip_msr; |
| 52 | static int mce_bootlog = 1; | 52 | static int mce_bootlog = -1; |
| 53 | static atomic_t mce_events; | 53 | static atomic_t mce_events; |
| 54 | 54 | ||
| 55 | static char trigger[128]; | 55 | static char trigger[128]; |
| @@ -471,13 +471,15 @@ static void mce_init(void *dummy) | |||
| 471 | static void __cpuinit mce_cpu_quirks(struct cpuinfo_x86 *c) | 471 | static void __cpuinit mce_cpu_quirks(struct cpuinfo_x86 *c) |
| 472 | { | 472 | { |
| 473 | /* This should be disabled by the BIOS, but isn't always */ | 473 | /* This should be disabled by the BIOS, but isn't always */ |
| 474 | if (c->x86_vendor == X86_VENDOR_AMD && c->x86 == 15) { | 474 | if (c->x86_vendor == X86_VENDOR_AMD) { |
| 475 | /* disable GART TBL walk error reporting, which trips off | 475 | if(c->x86 == 15) |
| 476 | incorrectly with the IOMMU & 3ware & Cerberus. */ | 476 | /* disable GART TBL walk error reporting, which trips off |
| 477 | clear_bit(10, &bank[4]); | 477 | incorrectly with the IOMMU & 3ware & Cerberus. */ |
| 478 | /* Lots of broken BIOS around that don't clear them | 478 | clear_bit(10, &bank[4]); |
| 479 | by default and leave crap in there. Don't log. */ | 479 | if(c->x86 <= 17 && mce_bootlog < 0) |
| 480 | mce_bootlog = 0; | 480 | /* Lots of broken BIOS around that don't clear them |
| 481 | by default and leave crap in there. Don't log. */ | ||
| 482 | mce_bootlog = 0; | ||
| 481 | } | 483 | } |
| 482 | 484 | ||
| 483 | } | 485 | } |
