From c324de46ca1b3e0c8ab025bc865e8be75392072a Mon Sep 17 00:00:00 2001 From: Andi Kleen Date: Thu, 30 Jun 2005 15:49:15 +0200 Subject: [PATCH] [PATCH] x86-64: Enable Nvidia timer override workaround for SMP kernels too >From Tymm Twillman In the 2.4.30/31 kernels there is now a backport from the 2.6 kernels of a workaround for buggy timer overrides in the ACPI tables for many nvidia chipset based motherboards. Unfortunately the code for this on x86-64 based systems is conditionally compiled in only for non-SMP kernels. This is a patch to remove the conditional and allow the code to be compiled in for SMP kernels as well (we've seen a number of SMP motherboards which intermittently lock up during boot, and otherwise sometimes seem unstable without the workaround). Patch so far has been tested across numerous reboots and several hours uptime. Signed-off-by: Andi Kleen --- arch/x86_64/kernel/io_apic.c | 2 -- arch/x86_64/kernel/setup.c | 2 +- 2 files changed, 1 insertion(+), 3 deletions(-) diff --git a/arch/x86_64/kernel/io_apic.c b/arch/x86_64/kernel/io_apic.c index 39d489b8..cd63a3dd 100644 --- a/arch/x86_64/kernel/io_apic.c +++ b/arch/x86_64/kernel/io_apic.c @@ -222,7 +222,6 @@ static int __init ioapic_setup(char *str) __setup("apic", ioapic_setup); -#ifndef CONFIG_SMP #include #include #include @@ -279,7 +278,6 @@ void __init check_ioapic(void) } } } -#endif static int __init ioapic_pirq_setup(char *str) { diff --git a/arch/x86_64/kernel/setup.c b/arch/x86_64/kernel/setup.c index dfa4c582..db88cf95 100644 --- a/arch/x86_64/kernel/setup.c +++ b/arch/x86_64/kernel/setup.c @@ -304,7 +304,7 @@ void __init setup_arch(char **cmdline_p) #endif paging_init(); -#if !defined(CONFIG_SMP) && defined(CONFIG_X86_IO_APIC) +#if defined(CONFIG_X86_IO_APIC) extern void check_ioapic(void); check_ioapic(); #endif -- 2.11.0