Native preemption is the culprit [was Re: today's CURRENT
lockups]
Taku YAMAMOTO
taku at tackymt.homeip.net
Thu Jul 8 19:19:59 PDT 2004
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?
--
-|-__ YAMAMOTO, Taku
| __ < <taku at tackymt.homeip.net>
Post Scriptum to the people who know me as taku at cent.saitama-u.ac.jp:
My email address has been changed since April,
because I've left the university.
More information about the freebsd-current
mailing list