Only schedule interrupts on a single hyperthread of a modern Intel CPU core

by default.  Previously we used a single hyperthread on Pentium4-era
cores but used both hyperthreads on more recent CPUs.

MFC after:	2 weeks
This commit is contained in:
John Baldwin 2015-03-06 20:34:28 +00:00
parent 27fd173649
commit 0915f6f2ac
2 changed files with 4 additions and 4 deletions

View File

@ -828,8 +828,8 @@ set_interrupt_apic_ids(void)
continue; continue;
/* Don't let hyperthreads service interrupts. */ /* Don't let hyperthreads service interrupts. */
if (hyperthreading_cpus > 1 && if (cpu_logical > 1 &&
apic_id % hyperthreading_cpus != 0) apic_id % cpu_logical != 0)
continue; continue;
intr_add_cpu(i); intr_add_cpu(i);

View File

@ -842,8 +842,8 @@ set_interrupt_apic_ids(void)
continue; continue;
/* Don't let hyperthreads service interrupts. */ /* Don't let hyperthreads service interrupts. */
if (hyperthreading_cpus > 1 && if (cpu_logical > 1 &&
apic_id % hyperthreading_cpus != 0) apic_id % cpu_logical != 0)
continue; continue;
intr_add_cpu(i); intr_add_cpu(i);