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
> 
> 

Reply via email to