Re: HEADSUP: Turn off cpu_idle_hlt on SMP for now on x86

From: John Baldwin <jhb_at_FreeBSD.org>
Date: Tue, 22 Feb 2005 16:20:27 -0500
On Friday 11 February 2005 11:48 am, John Baldwin wrote:
> Thus, my theory is that when the pinned thread was preempted and put back
> on the run queue, the scheduler didn't IPI the CPU it was pinned to to wake
> it up in case it was idle.  The IPI is only needed if the CPUs are halted,
> which is why I think turning the idle halt off might work as a workaround. 
> I don't know if ULE has this same issue, but I've cc'd Jeff and hopefully
> he can look into it.

Nevermind, I don't think cpu_idle_hlt will help (though it has seemed to help 
locally oddly enough).  Presumably the CPU that the preempted thread owning 
the vm page queues lock would have run the pinned thread before going idle.  
In this case, that means that the thread must be pinned to CPU 0 which is 
running a make process that is just spinning.  Unfortunately we currently 
don't have a good way of looking at the stack for an thread on another CPU.

-- 
John Baldwin <jhb_at_FreeBSD.org>  <><  http://www.FreeBSD.org/~jhb/
"Power Users Use the Power to Serve"  =  http://www.FreeBSD.org
Received on Tue Feb 22 2005 - 21:18:17 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:38:28 UTC