diff -u -r -N linux-2.6.0-test10/arch/i386/kernel/io_apic.c linux-2.6.0-test10-kai/arch/i386/kernel/io_apic.c --- linux-2.6.0-test10/arch/i386/kernel/io_apic.c 2003-11-24 02:31:38.000000000 +0100 +++ linux-2.6.0-test10-kai/arch/i386/kernel/io_apic.c 2003-11-26 14:30:29.000000000 +0100 @@ -627,6 +627,16 @@ irqbalance_disabled = 1; return 0; } + +#ifdef CONFIG_X86_HT + /* On Hyper-Threading CPUs - if only one physical installed + balance does not make sense */ + if (cpu_has_ht && smp_num_siblings == 2 && num_online_cpus() == 2) { + irqbalance_disabled = 1; + return 0; + } +#endif + /* * Enable physical balance only if more than 1 physical processor * is present