Re: [POC][RFC][PATCH v2] sched: Extended Scheduler Time Slice

From: Steven Rostedt
Date: Thu Oct 26 2023 - 15:36:54 EST


On Thu, 26 Oct 2023 14:59:13 -0400
Mathieu Desnoyers <mathieu.desnoyers@xxxxxxxxxxxx> wrote:

> > Steven, check out
> >
> > arch/x86/include/asm/percpu.h
> >
> > for a rough implementation of a 'xchg()' without SMP coherency, just
> > cpu-local one (ie atomic wrt being preempted by the kernel, but not
> > atomic wrt other CPU's accessing the same variable concurrently)
>
> Actually Steven does not need a xchg to test-and-set a single bit which
> is only accessed concurrently between kernel and userspace from the same
> thread. Either "bts" or "andb" should work fine.

Thanks Linus and Mathieu!

Yeah, I just changed it to andb and that works just as well (or better).

When I first made the change, it became substantially worse. But then I
realized it was because I had "addb" and not "andb" :-D

-- Steve