machdep.hlt_cpus not safe with ULE?

Garrett Cooper gcooper at
Mon Feb 21 20:07:57 UTC 2011

On Mon, Feb 21, 2011 at 8:29 AM, Andriy Gapon <avg at> wrote:
> on 19/02/2011 14:36 Steven Hartland said the following:
>> I'm trying to debug a possibly failing CPU, so I thought it would
>> be easy just disable the cores using machdep.hlt_cpus and see if
>> we see the panic's we've been seeing.
>> The problem is it seems ULE doesnt properly support machdep.hlt_cpus
>> and still schedules processes onto the halted cpus which obviously
>> causes problems.
>> Can anyone confirm this behaviour?
> Yes, your observations are correct.
> Please also see:
>> Should machdep.hlt_cpus and I assume
>> the logical counterpart never be used with ULE?

    As a followup to this and based on discussions with other folks,
the fact that it's using hlt to halt CPUs without rescheduling tasks /
masking interrupts, etc is not good. So none of the *hlt* sysctls are
really doing the right thing on x86.

More information about the freebsd-stable mailing list