On Mon, Jul 24, 2017 at 02:58:16PM -0700, Paul E. McKenney wrote:
> The sys_membarrier() system call has proven too slow for some use
> cases, which has prompted users to instead rely on TLB shootdown.
> Although TLB shootdown is much faster, it has the slight disadvantage
> of not working at all on arm and arm64.  This commit therefore adds
> an expedited option to the sys_membarrier() system call.

> @@ -64,6 +65,10 @@ SYSCALL_DEFINE2(membarrier, int, cmd, int, flags)
>               if (num_online_cpus() > 1)
>                       synchronize_sched();
>               return 0;
> +     case MEMBARRIER_CMD_SHARED_EXPEDITED:
> +             if (num_online_cpus() > 1)
> +                     synchronize_sched_expedited();
> +             return 0;

So you now give unprivileged userspace the means to IPI the entire
machine?

So what do we do when someone goes and does:

        for (;;)
                sys_membarrier(MEMBARRIER_CMD_SHARED_EXPEDITED, 0);

on us?

Reply via email to