ULE/yielding patch for testing.
Yuri Pankov
yuri.pankov at gmail.com
Tue Oct 2 18:22:23 PDT 2007
On Wed, Oct 03, 2007 at 04:50:09AM +0400, Yuri Pankov wrote:
> On Tue, Oct 02, 2007 at 04:53:33PM -0700, Jeff Roberson wrote:
> > Enclosed is a patch that does two things:
> >
> > 1) Reduces UP context switch time by over 10% making it faster than 4BSD
> > on UP. On SMP it's hard to compare since ULE can do as many as 30x as many
> > switches per second on my 8way system.
> >
> > 2) Restores old sched_yield() behavior from 6.x. This was changed in
> > -current unintentionally I think.
> >
> > I'd appreciate any extra testing. The ULE context switch time improvements
> > required some changes to the frequency that we recalculate priorities. I'm
> > mostly interested in hearing whether this causes any regression in normal
> > workloads.
> >
> > Those of you still using 4BSD can also verify that the yield changes don't
> > cause any problems there.
> >
> > Thanks,
> > Jeff
>
> Jeff,
>
> Patch applied cleanly, though with new kernel I got a panic just after
> boot - on xdm startup, I guess (crashdump wasn't saved), a lot of the same messages
> (copied by hand):
>
> cpuid = 0
> panic: _mtx_lock_sleep: recursed on non-recursive mutex
> audit_mtx@/usr/src/sys/security/audit_worker.c:518
>
> and after few seconds system just hangs.
>
> Any hints?
>
> --
> Yuri Pankov <yuri.pankov at gmail.com>
Sorry for being so verbose...
It's UP amd64 with SCHED_ULE
kernel config:
include GENERIC
ident DARKLIGHT
nooptions SCHED_4BSD
options SCHED_ULE
--
Yuri Pankov <yuri.pankov at gmail.com>
More information about the freebsd-current
mailing list