Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 29 Dec 2011 11:17:49 -0500
From:      John Baldwin <jhb@freebsd.org>
To:        Larry Rosenman <ler@lerctr.org>
Cc:        Alexander Motin <mav@freebsd.org>, freebsd-current@freebsd.org
Subject:   Re: scheduler panic
Message-ID:  <201112291117.49679.jhb@freebsd.org>
In-Reply-To: <alpine.BSF.2.00.1112250946550.8467@borg>
References:  <4EF48065.8000802@lerctr.org> <4EF4AF5C.1060000@lerctr.org> <alpine.BSF.2.00.1112250946550.8467@borg>

next in thread | previous in thread | raw e-mail | index | archive | help
On Sunday, December 25, 2011 10:48:32 am Larry Rosenman wrote:
> On Fri, 23 Dec 2011, Larry Rosenman wrote:
> > On 12/23/2011 8:54 AM, John Baldwin wrote:
> >> The sloppiest fix might be to do this:
> >>
> >> Index: sched_ule.c
> >> ===================================================================
> >>
> >>
> > - --- sched_ule.c	(revision 228777)
> >> +++ sched_ule.c	(working copy) @@ -1434,7 +1434,8 @@
> >> sched_priority(struct thread *td) } else { pri = SCHED_PRI_MIN; if
> >> (td->td_sched->ts_ticks) -			pri += SCHED_PRI_TICKS(td->td_sched);
> >> +			pri += min(SCHED_PRI_TICKS(td->td_sched), +
> >> SCHED_PRI_RANGE); pri += SCHED_PRI_NICE(td->td_proc->p_nice);
> >> KASSERT(pri >= PRI_MIN_BATCH && pri <= PRI_MAX_BATCH,
> >> ("sched_priority: invalid priority %d: nice %d, "
> >>
> >
> > I've applied this to both the host and the guest, and am recompiling
> > the guest kernel (hopefully it'll stay up long enough...).
> >
> > I'll report back.
> >
> > Do y'all (FreeBSD Devs) want a PR?
> >
> >
> I've run 2 complete buildworld/buildkernel cycles with the patch applied
> in the guest, and it's made it all the way through.  It wouldn't
> do that without it.
> 
> Can we get this (or something else like it) applied?
> 
> Do I need to file a PR?

I've committed this.  I do think the root problem is an issue with the clock
interrupts, but this seems to be a common enough problem I think a workaround
is warranted.

-- 
John Baldwin



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201112291117.49679.jhb>