On Fri, Apr 17 2015, Mathieu Desnoyers <mathieu.desnoy...@efficios.com> wrote:
> + */ > +SYSCALL_DEFINE2(membarrier, int, cmd, int, flags) > +{ > + switch (cmd) { > + case MEMBARRIER_CMD_QUERY: > + return MEMBARRIER_CMD_BITMASK; > + case MEMBARRIER_CMD_SHARED: > + if (num_online_cpus() > 1) > + synchronize_sched(); > + return 0; > + default: > + return -EINVAL; > + } > +} Shouldn't flags be enforced 0, to actually make future extensions possible without risk of breaking some sloppy userspace? I think that is or should be part of "make sure new syscalls take a flags parameter". > + * If this system call is not implemented, -ENOSYS is returned. If the > + * command specified does not exist, or if the command argument is invalid, > + * this system call returns -EINVAL. For a given command, this system call > + * is guaranteed to always return the same value until reboot. I like that guarantee, but it may be a bit much to promise for any and all possible future flags. So maybe weaken it to 'For a given command and flags==0, this ...'. Rasmus -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/