----- On Sep 7, 2015, at 12:15 PM, Mathieu Desnoyers mathieu.desnoyers@xxxxxxxxxxxx wrote: > [ Untested on this architecture. To try it out: fetch linux-next/akpm, > apply this patch, build/run a membarrier-enabled kernel, and do make > kselftest. ] Hi, We tested the system call on our ARM board (Wandboard, SoC Freescale i.MX6 Quad) by applying this patch on top of Linux 4.3-rc1. Both the membarrier kselftest and Userspace RCU regression tests (the latter manually wired up on sys_membarrier) work fine. Tested-by: Mathieu Desnoyers <mathieu.desnoyers@xxxxxxxxxxxx> sys_membarrier has been pulled into Linux 4.3-rc1. Please feel free to wire it up on ARM. Thanks! Mathieu > > Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@xxxxxxxxxxxx> > CC: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> > CC: linux-api@xxxxxxxxxxxxxxx > CC: Russell King <linux@xxxxxxxxxxxxxxxx> > --- > arch/arm/include/asm/unistd.h | 2 +- > arch/arm/include/uapi/asm/unistd.h | 1 + > arch/arm/kernel/calls.S | 1 + > 3 files changed, 3 insertions(+), 1 deletion(-) > > diff --git a/arch/arm/include/asm/unistd.h b/arch/arm/include/asm/unistd.h > index 32640c4..d93876c 100644 > --- a/arch/arm/include/asm/unistd.h > +++ b/arch/arm/include/asm/unistd.h > @@ -19,7 +19,7 @@ > * This may need to be greater than __NR_last_syscall+1 in order to > * account for the padding in the syscall table > */ > -#define __NR_syscalls (388) > +#define __NR_syscalls (389) > > /* > * *NOTE*: This is a ghost syscall private to the kernel. Only the > diff --git a/arch/arm/include/uapi/asm/unistd.h > b/arch/arm/include/uapi/asm/unistd.h > index 0c3f5a0..436bb32 100644 > --- a/arch/arm/include/uapi/asm/unistd.h > +++ b/arch/arm/include/uapi/asm/unistd.h > @@ -414,6 +414,7 @@ > #define __NR_memfd_create (__NR_SYSCALL_BASE+385) > #define __NR_bpf (__NR_SYSCALL_BASE+386) > #define __NR_execveat (__NR_SYSCALL_BASE+387) > +#define __NR_membarrier (__NR_SYSCALL_BASE+388) > > /* > * The following SWIs are ARM private. > diff --git a/arch/arm/kernel/calls.S b/arch/arm/kernel/calls.S > index 05745eb..310699c 100644 > --- a/arch/arm/kernel/calls.S > +++ b/arch/arm/kernel/calls.S > @@ -397,6 +397,7 @@ > /* 385 */ CALL(sys_memfd_create) > CALL(sys_bpf) > CALL(sys_execveat) > + CALL(sys_membarrier) > #ifndef syscalls_counted > .equ syscalls_padding, ((NR_syscalls + 3) & ~3) - NR_syscalls > #define syscalls_counted > -- > 1.9.1 -- Mathieu Desnoyers EfficiOS Inc. http://www.efficios.com -- To unsubscribe from this list: send the line "unsubscribe linux-api" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html