Re: The machdep.hyperthreading_allowed & ULE weirdness in 7.1

From: Robert Watson <rwatson_at_FreeBSD.org>
Date: Mon, 23 Feb 2009 20:27:05 +0000 (GMT)
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
Received on Mon Feb 23 2009 - 19:27:05 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:39:42 UTC