Re: Q: schedule() and implied barriers on arm64

From: Catalin Marinas
Date: Mon Oct 19 2015 - 11:21:21 EST


On Mon, Oct 19, 2015 at 09:06:05AM +0200, Ingo Molnar wrote:
> * Peter Zijlstra <peterz@xxxxxxxxxxxxx> wrote:
>
> > In any case, its all moot now, since Paul no longer requires schedule() to imply
> > a full barrier.
> >
> > [...]
>
> Nevertheless from a least-surprise POV it might be worth guaranteeing it, because
> I bet there's tons of code that assumes that schedule() is a heavy operation and
> it's such an easy mistake to make. Since we are so close to having that guarantee,
> we might as well codify it?

FWIW, the arm64 __switch_to() has a heavy barrier (DSB) but the reason
for this was to cope with potentially interrupted cache or TLB
maintenance (which require a DSB on the same CPU) and thread migration
to another CPU.

--
Catalin

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/