On Mon, 23 Feb 2009, Maxim Sobolev wrote:
Unfortunately access to BIOS is not always an option and also some BIOSes
don't even provide a feature to turn HTT off.
It's not quite that simple -- in a world of device drivers pinning threads
to CPUs for workload distribution, callout threads and
sched_bind()/sched_pin() for crypto load distribution, etc, you need a
whole infrastructure for software-disabled CPUs. Disabling it using the
BIOS or device.hints is the only reliable way to do this right now.
Changing the architecture of the kernel to disable CPU cores after boot is
a significant investment of work, and as I mentioned elsewhere, it is
disable to do this so that we can support dynamic reconfiguration in the
presence of a hypervisor, but it's highly non-trivial. There may be some
shortcuts that can be taken for policy reasons in the probing of CPUs when
the topology is detected that avoid the full dynamic solution having to be
done in the short-term, that in effect are a short-hand for device.hints
entries, but I don't know to what extent the CPU topology from ACPI is
available at the point where we'd need to know that.
So, are you suggesting that we should disable machdep.hyperthreading_allowed
with ULE in 7.x and current to avoid confusion?
Possibly even without ULE.
Robert N M Watson
Computer Laboratory
University of Cambridge
_______________________________________________
freebsd-stable@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-stable
To unsubscribe, send any mail to "freebsd-stable-unsubscr...@freebsd.org"