[PATCH 05/24] linux-user: Split TARGET_PROT_* out of syscall_defs.h

Richard Henderson posted 24 patches 1 year, 2 months ago
There is a newer version of this series
[PATCH 05/24] linux-user: Split TARGET_PROT_* out of syscall_defs.h
Posted by Richard Henderson 1 year, 2 months ago
Move the values into the per-target target_mman.h headers

Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
---
 linux-user/aarch64/target_mman.h |  3 +++
 linux-user/generic/target_mman.h |  4 ++++
 linux-user/mips/target_mman.h    |  2 ++
 linux-user/syscall_defs.h        | 11 -----------
 linux-user/xtensa/target_mman.h  |  2 ++
 5 files changed, 11 insertions(+), 11 deletions(-)

diff --git a/linux-user/aarch64/target_mman.h b/linux-user/aarch64/target_mman.h
index e7ba6070fe..7f15cab25e 100644
--- a/linux-user/aarch64/target_mman.h
+++ b/linux-user/aarch64/target_mman.h
@@ -1 +1,4 @@
+#define TARGET_PROT_BTI         0x10
+#define TARGET_PROT_MTE         0x20
+
 #include "../generic/target_mman.h"
diff --git a/linux-user/generic/target_mman.h b/linux-user/generic/target_mman.h
index 7b888fb7f8..39a650e751 100644
--- a/linux-user/generic/target_mman.h
+++ b/linux-user/generic/target_mman.h
@@ -1,6 +1,10 @@
 #ifndef LINUX_USER_TARGET_MMAN_H
 #define LINUX_USER_TARGET_MMAN_H
 
+#ifndef TARGET_PROT_SEM
+#define TARGET_PROT_SEM                 0x08
+#endif
+
 /* These are defined in linux/mmap.h */
 #define TARGET_MAP_SHARED               0x01
 #define TARGET_MAP_PRIVATE              0x02
diff --git a/linux-user/mips/target_mman.h b/linux-user/mips/target_mman.h
index d1d96decf5..e9f3905a52 100644
--- a/linux-user/mips/target_mman.h
+++ b/linux-user/mips/target_mman.h
@@ -1,3 +1,5 @@
+#define TARGET_PROT_SEM                 0x10
+
 #define TARGET_MAP_NORESERVE            0x0400
 #define TARGET_MAP_ANONYMOUS            0x0800
 #define TARGET_MAP_GROWSDOWN            0x1000
diff --git a/linux-user/syscall_defs.h b/linux-user/syscall_defs.h
index 118a8ac7da..9387ed422d 100644
--- a/linux-user/syscall_defs.h
+++ b/linux-user/syscall_defs.h
@@ -1251,17 +1251,6 @@ struct target_winsize {
 
 #include "termbits.h"
 
-#if defined(TARGET_MIPS) || defined(TARGET_XTENSA)
-#define TARGET_PROT_SEM         0x10
-#else
-#define TARGET_PROT_SEM         0x08
-#endif
-
-#ifdef TARGET_AARCH64
-#define TARGET_PROT_BTI         0x10
-#define TARGET_PROT_MTE         0x20
-#endif
-
 #include "target_mman.h"
 
 #if (defined(TARGET_I386) && defined(TARGET_ABI32)) \
diff --git a/linux-user/xtensa/target_mman.h b/linux-user/xtensa/target_mman.h
index d1d96decf5..e9f3905a52 100644
--- a/linux-user/xtensa/target_mman.h
+++ b/linux-user/xtensa/target_mman.h
@@ -1,3 +1,5 @@
+#define TARGET_PROT_SEM                 0x10
+
 #define TARGET_MAP_NORESERVE            0x0400
 #define TARGET_MAP_ANONYMOUS            0x0800
 #define TARGET_MAP_GROWSDOWN            0x1000
-- 
2.34.1
Re: [PATCH 05/24] linux-user: Split TARGET_PROT_* out of syscall_defs.h
Posted by Alex Bennée 1 year, 2 months ago
Richard Henderson <richard.henderson@linaro.org> writes:

> Move the values into the per-target target_mman.h headers
>
> Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
> ---
>  linux-user/aarch64/target_mman.h |  3 +++
>  linux-user/generic/target_mman.h |  4 ++++
>  linux-user/mips/target_mman.h    |  2 ++
>  linux-user/syscall_defs.h        | 11 -----------
>  linux-user/xtensa/target_mman.h  |  2 ++
>  5 files changed, 11 insertions(+), 11 deletions(-)
>
> diff --git a/linux-user/aarch64/target_mman.h b/linux-user/aarch64/target_mman.h
> index e7ba6070fe..7f15cab25e 100644
> --- a/linux-user/aarch64/target_mman.h
> +++ b/linux-user/aarch64/target_mman.h
> @@ -1 +1,4 @@
> +#define TARGET_PROT_BTI         0x10
> +#define TARGET_PROT_MTE         0x20
> +
>  #include "../generic/target_mman.h"
> diff --git a/linux-user/generic/target_mman.h b/linux-user/generic/target_mman.h
> index 7b888fb7f8..39a650e751 100644
> --- a/linux-user/generic/target_mman.h
> +++ b/linux-user/generic/target_mman.h
> @@ -1,6 +1,10 @@
>  #ifndef LINUX_USER_TARGET_MMAN_H
>  #define LINUX_USER_TARGET_MMAN_H
>  
> +#ifndef TARGET_PROT_SEM
> +#define TARGET_PROT_SEM                 0x08
> +#endif
> +

I wonder if it is worth adding some commentary at the top that this file
should only be included from the arch specific target_mman.h as there is
an implicit ordering requirement for #ifndef to work properly.

Anyway:

Reviewed-by: Alex Bennée <alex.bennee@linaro.org>

-- 
Alex Bennée
Virtualisation Tech Lead @ Linaro
Re: [PATCH 05/24] linux-user: Split TARGET_PROT_* out of syscall_defs.h
Posted by Philippe Mathieu-Daudé 1 year, 2 months ago
On 30/6/23 15:21, Richard Henderson wrote:
> Move the values into the per-target target_mman.h headers
> 
> Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
> ---
>   linux-user/aarch64/target_mman.h |  3 +++
>   linux-user/generic/target_mman.h |  4 ++++
>   linux-user/mips/target_mman.h    |  2 ++
>   linux-user/syscall_defs.h        | 11 -----------
>   linux-user/xtensa/target_mman.h  |  2 ++
>   5 files changed, 11 insertions(+), 11 deletions(-)

Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>