diff options
| -rw-r--r-- | arch/x86/kernel/cpu/amd.c | 23 | ||||
| -rw-r--r-- | arch/x86/kernel/espfix_64.c | 3 |
2 files changed, 11 insertions, 15 deletions
diff --git a/arch/x86/kernel/cpu/amd.c b/arch/x86/kernel/cpu/amd.c index 813d29d00a17..15c5df92f74e 100644 --- a/arch/x86/kernel/cpu/amd.c +++ b/arch/x86/kernel/cpu/amd.c | |||
| @@ -566,6 +566,17 @@ static void init_amd_k8(struct cpuinfo_x86 *c) | |||
| 566 | 566 | ||
| 567 | if (!c->x86_model_id[0]) | 567 | if (!c->x86_model_id[0]) |
| 568 | strcpy(c->x86_model_id, "Hammer"); | 568 | strcpy(c->x86_model_id, "Hammer"); |
| 569 | |||
| 570 | #ifdef CONFIG_SMP | ||
| 571 | /* | ||
| 572 | * Disable TLB flush filter by setting HWCR.FFDIS on K8 | ||
| 573 | * bit 6 of msr C001_0015 | ||
| 574 | * | ||
| 575 | * Errata 63 for SH-B3 steppings | ||
| 576 | * Errata 122 for all steppings (F+ have it disabled by default) | ||
| 577 | */ | ||
| 578 | msr_set_bit(MSR_K7_HWCR, 6); | ||
| 579 | #endif | ||
| 569 | } | 580 | } |
| 570 | 581 | ||
| 571 | static void init_amd_gh(struct cpuinfo_x86 *c) | 582 | static void init_amd_gh(struct cpuinfo_x86 *c) |
| @@ -636,18 +647,6 @@ static void init_amd(struct cpuinfo_x86 *c) | |||
| 636 | { | 647 | { |
| 637 | u32 dummy; | 648 | u32 dummy; |
| 638 | 649 | ||
| 639 | #ifdef CONFIG_SMP | ||
| 640 | /* | ||
| 641 | * Disable TLB flush filter by setting HWCR.FFDIS on K8 | ||
| 642 | * bit 6 of msr C001_0015 | ||
| 643 | * | ||
| 644 | * Errata 63 for SH-B3 steppings | ||
| 645 | * Errata 122 for all steppings (F+ have it disabled by default) | ||
| 646 | */ | ||
| 647 | if (c->x86 == 0xf) | ||
| 648 | msr_set_bit(MSR_K7_HWCR, 6); | ||
| 649 | #endif | ||
| 650 | |||
| 651 | early_init_amd(c); | 650 | early_init_amd(c); |
| 652 | 651 | ||
| 653 | /* | 652 | /* |
diff --git a/arch/x86/kernel/espfix_64.c b/arch/x86/kernel/espfix_64.c index 94d857fb1033..f5d0730e7b08 100644 --- a/arch/x86/kernel/espfix_64.c +++ b/arch/x86/kernel/espfix_64.c | |||
| @@ -122,9 +122,6 @@ static void init_espfix_random(void) | |||
| 122 | void __init init_espfix_bsp(void) | 122 | void __init init_espfix_bsp(void) |
| 123 | { | 123 | { |
| 124 | pgd_t *pgd_p; | 124 | pgd_t *pgd_p; |
| 125 | pteval_t ptemask; | ||
| 126 | |||
| 127 | ptemask = __supported_pte_mask; | ||
| 128 | 125 | ||
| 129 | /* Install the espfix pud into the kernel page directory */ | 126 | /* Install the espfix pud into the kernel page directory */ |
| 130 | pgd_p = &init_level4_pgt[pgd_index(ESPFIX_BASE_ADDR)]; | 127 | pgd_p = &init_level4_pgt[pgd_index(ESPFIX_BASE_ADDR)]; |
