Re: [PATCH v2 2/9] mips: allocate sys_membarrier system call number

From: Mathieu Desnoyers
Date: Wed Sep 16 2015 - 11:05:18 EST


----- On Sep 7, 2015, at 12:15 PM, Mathieu Desnoyers mathieu.desnoyers@xxxxxxxxxxxx wrote:

> Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@xxxxxxxxxxxx>
> Acked-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>
> CC: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
> CC: linux-api@xxxxxxxxxxxxxxx
> CC: linux-mips@xxxxxxxxxxxxxx

Hi,

FYI, sys_membarrier has been merged upstream in Linux 4.3-rc1. Feel free
to wire up this system call on MIPS.

Thanks!

Mathieu

> ---
> arch/mips/include/uapi/asm/unistd.h | 15 +++++++++------
> arch/mips/kernel/scall32-o32.S | 1 +
> arch/mips/kernel/scall64-64.S | 1 +
> arch/mips/kernel/scall64-n32.S | 1 +
> arch/mips/kernel/scall64-o32.S | 1 +
> 5 files changed, 13 insertions(+), 6 deletions(-)
>
> diff --git a/arch/mips/include/uapi/asm/unistd.h
> b/arch/mips/include/uapi/asm/unistd.h
> index d0bdfaa..b107983 100644
> --- a/arch/mips/include/uapi/asm/unistd.h
> +++ b/arch/mips/include/uapi/asm/unistd.h
> @@ -378,16 +378,17 @@
> #define __NR_bpf (__NR_Linux + 355)
> #define __NR_execveat (__NR_Linux + 356)
> #define __NR_mlock2 (__NR_Linux + 357)
> +#define __NR_membarrier (__NR_Linux + 358)
>
> /*
> * Offset of the last Linux o32 flavoured syscall
> */
> -#define __NR_Linux_syscalls 357
> +#define __NR_Linux_syscalls 358
>
> #endif /* _MIPS_SIM == _MIPS_SIM_ABI32 */
>
> #define __NR_O32_Linux 4000
> -#define __NR_O32_Linux_syscalls 357
> +#define __NR_O32_Linux_syscalls 358
>
> #if _MIPS_SIM == _MIPS_SIM_ABI64
>
> @@ -713,16 +714,17 @@
> #define __NR_bpf (__NR_Linux + 315)
> #define __NR_execveat (__NR_Linux + 316)
> #define __NR_mlock2 (__NR_Linux + 317)
> +#define __NR_membarrier (__NR_Linux + 318)
>
> /*
> * Offset of the last Linux 64-bit flavoured syscall
> */
> -#define __NR_Linux_syscalls 317
> +#define __NR_Linux_syscalls 318
>
> #endif /* _MIPS_SIM == _MIPS_SIM_ABI64 */
>
> #define __NR_64_Linux 5000
> -#define __NR_64_Linux_syscalls 317
> +#define __NR_64_Linux_syscalls 318
>
> #if _MIPS_SIM == _MIPS_SIM_NABI32
>
> @@ -1052,15 +1054,16 @@
> #define __NR_bpf (__NR_Linux + 319)
> #define __NR_execveat (__NR_Linux + 320)
> #define __NR_mlock2 (__NR_Linux + 321)
> +#define __NR_membarrier (__NR_Linux + 322)
>
> /*
> * Offset of the last N32 flavoured syscall
> */
> -#define __NR_Linux_syscalls 321
> +#define __NR_Linux_syscalls 322
>
> #endif /* _MIPS_SIM == _MIPS_SIM_NABI32 */
>
> #define __NR_N32_Linux 6000
> -#define __NR_N32_Linux_syscalls 321
> +#define __NR_N32_Linux_syscalls 322
>
> #endif /* _UAPI_ASM_UNISTD_H */
> diff --git a/arch/mips/kernel/scall32-o32.S b/arch/mips/kernel/scall32-o32.S
> index b0b377a..9265542 100644
> --- a/arch/mips/kernel/scall32-o32.S
> +++ b/arch/mips/kernel/scall32-o32.S
> @@ -600,3 +600,4 @@ EXPORT(sys_call_table)
> PTR sys_bpf /* 4355 */
> PTR sys_execveat
> PTR sys_mlock2
> + PTR sys_membarrier
> diff --git a/arch/mips/kernel/scall64-64.S b/arch/mips/kernel/scall64-64.S
> index f12eb03..79d4fb0 100644
> --- a/arch/mips/kernel/scall64-64.S
> +++ b/arch/mips/kernel/scall64-64.S
> @@ -437,4 +437,5 @@ EXPORT(sys_call_table)
> PTR sys_bpf /* 5315 */
> PTR sys_execveat
> PTR sys_mlock2
> + PTR sys_membarrier
> .size sys_call_table,.-sys_call_table
> diff --git a/arch/mips/kernel/scall64-n32.S b/arch/mips/kernel/scall64-n32.S
> index ecdd65a..235892a 100644
> --- a/arch/mips/kernel/scall64-n32.S
> +++ b/arch/mips/kernel/scall64-n32.S
> @@ -430,4 +430,5 @@ EXPORT(sysn32_call_table)
> PTR sys_bpf
> PTR compat_sys_execveat /* 6320 */
> PTR sys_mlock2
> + PTR sys_membarrier
> .size sysn32_call_table,.-sysn32_call_table
> diff --git a/arch/mips/kernel/scall64-o32.S b/arch/mips/kernel/scall64-o32.S
> index 7a8b2df..c051bd3 100644
> --- a/arch/mips/kernel/scall64-o32.S
> +++ b/arch/mips/kernel/scall64-o32.S
> @@ -585,4 +585,5 @@ EXPORT(sys32_call_table)
> PTR sys_bpf /* 4355 */
> PTR compat_sys_execveat
> PTR sys_mlock2
> + PTR sys_membarrier
> .size sys32_call_table,.-sys32_call_table
> --
> 1.9.1

--
Mathieu Desnoyers
EfficiOS Inc.
http://www.efficios.com
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/