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

From: John Baldwin <jhb_at_FreeBSD.org>
Date: Mon, 14 Feb 2005 16:32:57 -0500
On Sunday 13 February 2005 08:28 pm, Julian Elischer wrote:
> John Baldwin wrote:
> > I figured out a deadlock I got on a 4 CPU testbox last night and I think
> > I have tracked it down to a bug in 4BSD that can be worked around by
> > turning off idle halt via the machdep.cpu_idle_hlt sysctl.  Specifically,
> > it involves waking up halted CPUs when a thread it is pinned or bound to
> > a specific CPU is made runnable.  The details of what I saw today are
> > below:
>
> did you try setting the sysctl that makes the idle IPI get sent to
> ALL idle cpus and not just the one that is selected?

No, but the fact that this is a bug that might explain all the various 
"livelock" conditions people like Peter Holm and others have noticed means 
that the problem needs to be addressed.  It should seem obvious from simple 
code inspection that 4BSD doesn't handle the pinning case well as described.

-- 
John Baldwin <jhb_at_FreeBSD.org>  <><  http://www.FreeBSD.org/~jhb/
"Power Users Use the Power to Serve"  =  http://www.FreeBSD.org
Received on Mon Feb 14 2005 - 21:01:28 UTC

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