On Wed, 07 Jun 2017 18:15:06 +0200 Peter Zijlstra <pet...@infradead.org> wrote:
> Now that the scheduler's rq->lock is RCsc and thus provides full > transitivity between scheduling actions. And since we cannot migrate > current, a task needs a switch-out and a switch-in in order to > migrate, in which case the RCsc provides all the ordering we need. Hi Peter, I'm actually just working on removing this right now too, so good timing. I think we can't "just" remove it, because it is required to order MMIO on powerpc as well. But what I have done is to comment that some other primitives are already providing the hwsync for other, so we don't have to add another one in _switch. Thanks, Nick > > Signed-off-by: Peter Zijlstra (Intel) <pet...@infradead.org> > --- > arch/powerpc/kernel/entry_64.S | 8 -------- > 1 file changed, 8 deletions(-) > > --- a/arch/powerpc/kernel/entry_64.S > +++ b/arch/powerpc/kernel/entry_64.S > @@ -488,14 +488,6 @@ _GLOBAL(_switch) > std r23,_CCR(r1) > std r1,KSP(r3) /* Set old stack pointer */ > > -#ifdef CONFIG_SMP > - /* We need a sync somewhere here to make sure that if the > - * previous task gets rescheduled on another CPU, it sees all > - * stores it has performed on this one. > - */ > - sync > -#endif /* CONFIG_SMP */ > - > /* > * If we optimise away the clear of the reservation in system > * calls because we know the CPU tracks the address of the > >