Re: Native preemption is the culprit [was Re: today's CURRENT lockups]

From: John Baldwin <jhb_at_FreeBSD.org>
Date: Fri, 9 Jul 2004 13:15:16 -0400
On Thursday 08 July 2004 10:19 pm, Taku YAMAMOTO wrote:
> On Thu, 8 Jul 2004 13:17:53 -0400
>
> John Baldwin <jhb_at_FreeBSD.org> wrote:
> > On Thursday 08 July 2004 09:21 am, Taku YAMAMOTO wrote:
> > > greetings,
> > >
> > >
> > > A quick glance showed me that there are some interesting code paths in
> > > sched_ule.c that can be problematic in SMP case.
> > >
> > >   1. sched_choose() => kseq_idled() => sched_add()
> > >   2. sched_choose() => kseq_assign() => sched_add()
> > >   3. sched_runnable() => kseq_assign() => sched_add()
> > >
> > > Here is the patch that re-enables preemption except for the above three
> > > cases.
> >
> > This looks correct.  I'll test it locally first.  Has it worked for you
> > all day?
>
> My machine (HTT) has been up for 20 hours without a hang since last update.
> I tried to stress it in various ways (fsck -n, buildworld & buildkernel in
> parallel, burning a CD, etc.) but failed to crash it.
>
> I'm bit afraid since the code is not tested on real SMP machines.
> How is it going on yours?

My test machine is not a true SMP machine either, just HTT.  It has been 
running a -j 256 worldloop overnight with no problems, so I committed a 
slightly modified version of the patch yesterday.

-- 
John Baldwin <jhb_at_FreeBSD.org>  <><  http://www.FreeBSD.org/~jhb/
"Power Users Use the Power to Serve"  =  http://www.FreeBSD.org
Received on Fri Jul 09 2004 - 15:14:06 UTC

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