diff mbox series

[v3,1/5] linux-user: Provide MADV_* definitions

Message ID 20220906000839.1672934-2-iii@linux.ibm.com (mailing list archive)
State New, archived
Headers show
Series linux-user: Passthrough MADV_DONTNEED for certain file mappings | expand

Commit Message

Ilya Leoshkevich Sept. 6, 2022, 12:08 a.m. UTC
Provide MADV_* definitions using target_mman.h header, similar to what
kernel does. Most architectures use the same values, with the exception
of alpha and hppa.

Signed-off-by: Ilya Leoshkevich <iii@linux.ibm.com>
---
 linux-user/aarch64/target_mman.h     |  1 +
 linux-user/alpha/target_mman.h       |  8 +++
 linux-user/arm/target_mman.h         |  1 +
 linux-user/cris/target_mman.h        |  1 +
 linux-user/generic/target_mman.h     | 92 ++++++++++++++++++++++++++++
 linux-user/hexagon/target_mman.h     |  1 +
 linux-user/hppa/target_mman.h        | 15 +++++
 linux-user/i386/target_mman.h        |  1 +
 linux-user/loongarch64/target_mman.h |  1 +
 linux-user/m68k/target_mman.h        |  1 +
 linux-user/microblaze/target_mman.h  |  1 +
 linux-user/mips/target_mman.h        |  1 +
 linux-user/mips64/target_mman.h      |  1 +
 linux-user/nios2/target_mman.h       |  1 +
 linux-user/openrisc/target_mman.h    |  1 +
 linux-user/ppc/target_mman.h         |  1 +
 linux-user/riscv/target_mman.h       |  1 +
 linux-user/s390x/target_mman.h       |  1 +
 linux-user/sh4/target_mman.h         |  1 +
 linux-user/sparc/target_mman.h       |  1 +
 linux-user/x86_64/target_mman.h      |  1 +
 linux-user/xtensa/target_mman.h      |  1 +
 22 files changed, 134 insertions(+)
 create mode 100644 linux-user/aarch64/target_mman.h
 create mode 100644 linux-user/alpha/target_mman.h
 create mode 100644 linux-user/arm/target_mman.h
 create mode 100644 linux-user/cris/target_mman.h
 create mode 100644 linux-user/generic/target_mman.h
 create mode 100644 linux-user/hexagon/target_mman.h
 create mode 100644 linux-user/hppa/target_mman.h
 create mode 100644 linux-user/i386/target_mman.h
 create mode 100644 linux-user/loongarch64/target_mman.h
 create mode 100644 linux-user/m68k/target_mman.h
 create mode 100644 linux-user/microblaze/target_mman.h
 create mode 100644 linux-user/mips/target_mman.h
 create mode 100644 linux-user/mips64/target_mman.h
 create mode 100644 linux-user/nios2/target_mman.h
 create mode 100644 linux-user/openrisc/target_mman.h
 create mode 100644 linux-user/ppc/target_mman.h
 create mode 100644 linux-user/riscv/target_mman.h
 create mode 100644 linux-user/s390x/target_mman.h
 create mode 100644 linux-user/sh4/target_mman.h
 create mode 100644 linux-user/sparc/target_mman.h
 create mode 100644 linux-user/x86_64/target_mman.h
 create mode 100644 linux-user/xtensa/target_mman.h

Comments

Laurent Vivier Sept. 23, 2022, 9:51 p.m. UTC | #1
Le 06/09/2022 à 02:08, Ilya Leoshkevich a écrit :
> Provide MADV_* definitions using target_mman.h header, similar to what
> kernel does. Most architectures use the same values, with the exception
> of alpha and hppa.
> 
> Signed-off-by: Ilya Leoshkevich <iii@linux.ibm.com>
> ---
>   linux-user/aarch64/target_mman.h     |  1 +
>   linux-user/alpha/target_mman.h       |  8 +++
>   linux-user/arm/target_mman.h         |  1 +
>   linux-user/cris/target_mman.h        |  1 +
>   linux-user/generic/target_mman.h     | 92 ++++++++++++++++++++++++++++
>   linux-user/hexagon/target_mman.h     |  1 +
>   linux-user/hppa/target_mman.h        | 15 +++++
>   linux-user/i386/target_mman.h        |  1 +
>   linux-user/loongarch64/target_mman.h |  1 +
>   linux-user/m68k/target_mman.h        |  1 +
>   linux-user/microblaze/target_mman.h  |  1 +
>   linux-user/mips/target_mman.h        |  1 +
>   linux-user/mips64/target_mman.h      |  1 +
>   linux-user/nios2/target_mman.h       |  1 +
>   linux-user/openrisc/target_mman.h    |  1 +
>   linux-user/ppc/target_mman.h         |  1 +
>   linux-user/riscv/target_mman.h       |  1 +
>   linux-user/s390x/target_mman.h       |  1 +
>   linux-user/sh4/target_mman.h         |  1 +
>   linux-user/sparc/target_mman.h       |  1 +
>   linux-user/x86_64/target_mman.h      |  1 +
>   linux-user/xtensa/target_mman.h      |  1 +
>   22 files changed, 134 insertions(+)
>   create mode 100644 linux-user/aarch64/target_mman.h
>   create mode 100644 linux-user/alpha/target_mman.h
>   create mode 100644 linux-user/arm/target_mman.h
>   create mode 100644 linux-user/cris/target_mman.h
>   create mode 100644 linux-user/generic/target_mman.h
>   create mode 100644 linux-user/hexagon/target_mman.h
>   create mode 100644 linux-user/hppa/target_mman.h
>   create mode 100644 linux-user/i386/target_mman.h
>   create mode 100644 linux-user/loongarch64/target_mman.h
>   create mode 100644 linux-user/m68k/target_mman.h
>   create mode 100644 linux-user/microblaze/target_mman.h
>   create mode 100644 linux-user/mips/target_mman.h
>   create mode 100644 linux-user/mips64/target_mman.h
>   create mode 100644 linux-user/nios2/target_mman.h
>   create mode 100644 linux-user/openrisc/target_mman.h
>   create mode 100644 linux-user/ppc/target_mman.h
>   create mode 100644 linux-user/riscv/target_mman.h
>   create mode 100644 linux-user/s390x/target_mman.h
>   create mode 100644 linux-user/sh4/target_mman.h
>   create mode 100644 linux-user/sparc/target_mman.h
>   create mode 100644 linux-user/x86_64/target_mman.h
>   create mode 100644 linux-user/xtensa/target_mman.h
> 
> diff --git a/linux-user/aarch64/target_mman.h b/linux-user/aarch64/target_mman.h
> new file mode 100644
> index 0000000000..e7ba6070fe
> --- /dev/null
> +++ b/linux-user/aarch64/target_mman.h
> @@ -0,0 +1 @@
> +#include "../generic/target_mman.h"
> diff --git a/linux-user/alpha/target_mman.h b/linux-user/alpha/target_mman.h
> new file mode 100644
> index 0000000000..cd6e3d70a6
> --- /dev/null
> +++ b/linux-user/alpha/target_mman.h
> @@ -0,0 +1,8 @@
> +#ifndef ALPHA_TARGET_MMAN_H
> +#define ALPHA_TARGET_MMAN_H
> +
> +#define TARGET_MADV_DONTNEED 6
> +
> +#include "../generic/target_mman.h"
> +
> +#endif
> diff --git a/linux-user/arm/target_mman.h b/linux-user/arm/target_mman.h
> new file mode 100644
> index 0000000000..e7ba6070fe
> --- /dev/null
> +++ b/linux-user/arm/target_mman.h
> @@ -0,0 +1 @@
> +#include "../generic/target_mman.h"
> diff --git a/linux-user/cris/target_mman.h b/linux-user/cris/target_mman.h
> new file mode 100644
> index 0000000000..e7ba6070fe
> --- /dev/null
> +++ b/linux-user/cris/target_mman.h
> @@ -0,0 +1 @@
> +#include "../generic/target_mman.h"
> diff --git a/linux-user/generic/target_mman.h b/linux-user/generic/target_mman.h
> new file mode 100644
> index 0000000000..1436a3c543
> --- /dev/null
> +++ b/linux-user/generic/target_mman.h
> @@ -0,0 +1,92 @@
> +#ifndef LINUX_USER_TARGET_MMAN_H
> +#define LINUX_USER_TARGET_MMAN_H
> +
> +#ifndef TARGET_MADV_NORMAL
> +#define TARGET_MADV_NORMAL 0
> +#endif
> +
> +#ifndef TARGET_MADV_RANDOM
> +#define TARGET_MADV_RANDOM 1
> +#endif
> +
> +#ifndef TARGET_MADV_SEQUENTIAL
> +#define TARGET_MADV_SEQUENTIAL 2
> +#endif
> +
> +#ifndef TARGET_MADV_WILLNEED
> +#define TARGET_MADV_WILLNEED 3
> +#endif
> +
> +#ifndef TARGET_MADV_DONTNEED
> +#define TARGET_MADV_DONTNEED 4
> +#endif
> +
> +#ifndef TARGET_MADV_FREE
> +#define TARGET_MADV_FREE 8
> +#endif
> +
> +#ifndef TARGET_MADV_REMOVE
> +#define TARGET_MADV_REMOVE 9
> +#endif
> +
> +#ifndef TARGET_MADV_DONTFORK
> +#define TARGET_MADV_DONTFORK 10
> +#endif
> +
> +#ifndef TARGET_MADV_DOFORK
> +#define TARGET_MADV_DOFORK 11
> +#endif
> +
> +#ifndef TARGET_MADV_MERGEABLE
> +#define TARGET_MADV_MERGEABLE 12
> +#endif
> +
> +#ifndef TARGET_MADV_UNMERGEABLE
> +#define TARGET_MADV_UNMERGEABLE 13
> +#endif
> +
> +#ifndef TARGET_MADV_HUGEPAGE
> +#define TARGET_MADV_HUGEPAGE 14
> +#endif
> +
> +#ifndef TARGET_MADV_NOHUGEPAGE
> +#define TARGET_MADV_NOHUGEPAGE 15
> +#endif
> +
> +#ifndef TARGET_MADV_DONTDUMP
> +#define TARGET_MADV_DONTDUMP 16
> +#endif
> +
> +#ifndef TARGET_MADV_DODUMP
> +#define TARGET_MADV_DODUMP 17
> +#endif
> +
> +#ifndef TARGET_MADV_WIPEONFORK
> +#define TARGET_MADV_WIPEONFORK 18
> +#endif
> +
> +#ifndef TARGET_MADV_KEEPONFORK
> +#define TARGET_MADV_KEEPONFORK 19
> +#endif
> +
> +#ifndef TARGET_MADV_COLD
> +#define TARGET_MADV_COLD 20
> +#endif
> +
> +#ifndef TARGET_MADV_PAGEOUT
> +#define TARGET_MADV_PAGEOUT 21
> +#endif
> +
> +#ifndef TARGET_MADV_POPULATE_READ
> +#define TARGET_MADV_POPULATE_READ 22
> +#endif
> +
> +#ifndef TARGET_MADV_POPULATE_WRITE
> +#define TARGET_MADV_POPULATE_WRITE 23
> +#endif
> +
> +#ifndef TARGET_MADV_DONTNEED_LOCKED
> +#define TARGET_MADV_DONTNEED_LOCKED 24
> +#endif
> +
> +#endif
> diff --git a/linux-user/hexagon/target_mman.h b/linux-user/hexagon/target_mman.h
> new file mode 100644
> index 0000000000..e7ba6070fe
> --- /dev/null
> +++ b/linux-user/hexagon/target_mman.h
> @@ -0,0 +1 @@
> +#include "../generic/target_mman.h"
> diff --git a/linux-user/hppa/target_mman.h b/linux-user/hppa/target_mman.h
> new file mode 100644
> index 0000000000..66dd9f7941
> --- /dev/null
> +++ b/linux-user/hppa/target_mman.h
> @@ -0,0 +1,15 @@
> +#ifndef HPPA_TARGET_MMAN_H
> +#define HPPA_TARGET_MMAN_H
> +
> +#define TARGET_MADV_MERGEABLE 65
> +#define TARGET_MADV_UNMERGEABLE 66
> +#define TARGET_MADV_HUGEPAGE 67
> +#define TARGET_MADV_NOHUGEPAGE 68
> +#define TARGET_MADV_DONTDUMP 69
> +#define TARGET_MADV_DODUMP 70
> +#define TARGET_MADV_WIPEONFORK 71
> +#define TARGET_MADV_KEEPONFORK 72
> +
> +#include "../generic/target_mman.h"
> +
> +#endif
> diff --git a/linux-user/i386/target_mman.h b/linux-user/i386/target_mman.h
> new file mode 100644
> index 0000000000..e7ba6070fe
> --- /dev/null
> +++ b/linux-user/i386/target_mman.h
> @@ -0,0 +1 @@
> +#include "../generic/target_mman.h"
> diff --git a/linux-user/loongarch64/target_mman.h b/linux-user/loongarch64/target_mman.h
> new file mode 100644
> index 0000000000..e7ba6070fe
> --- /dev/null
> +++ b/linux-user/loongarch64/target_mman.h
> @@ -0,0 +1 @@
> +#include "../generic/target_mman.h"
> diff --git a/linux-user/m68k/target_mman.h b/linux-user/m68k/target_mman.h
> new file mode 100644
> index 0000000000..e7ba6070fe
> --- /dev/null
> +++ b/linux-user/m68k/target_mman.h
> @@ -0,0 +1 @@
> +#include "../generic/target_mman.h"
> diff --git a/linux-user/microblaze/target_mman.h b/linux-user/microblaze/target_mman.h
> new file mode 100644
> index 0000000000..e7ba6070fe
> --- /dev/null
> +++ b/linux-user/microblaze/target_mman.h
> @@ -0,0 +1 @@
> +#include "../generic/target_mman.h"
> diff --git a/linux-user/mips/target_mman.h b/linux-user/mips/target_mman.h
> new file mode 100644
> index 0000000000..e7ba6070fe
> --- /dev/null
> +++ b/linux-user/mips/target_mman.h
> @@ -0,0 +1 @@
> +#include "../generic/target_mman.h"
> diff --git a/linux-user/mips64/target_mman.h b/linux-user/mips64/target_mman.h
> new file mode 100644
> index 0000000000..e7ba6070fe
> --- /dev/null
> +++ b/linux-user/mips64/target_mman.h
> @@ -0,0 +1 @@
> +#include "../generic/target_mman.h"
> diff --git a/linux-user/nios2/target_mman.h b/linux-user/nios2/target_mman.h
> new file mode 100644
> index 0000000000..e7ba6070fe
> --- /dev/null
> +++ b/linux-user/nios2/target_mman.h
> @@ -0,0 +1 @@
> +#include "../generic/target_mman.h"
> diff --git a/linux-user/openrisc/target_mman.h b/linux-user/openrisc/target_mman.h
> new file mode 100644
> index 0000000000..e7ba6070fe
> --- /dev/null
> +++ b/linux-user/openrisc/target_mman.h
> @@ -0,0 +1 @@
> +#include "../generic/target_mman.h"
> diff --git a/linux-user/ppc/target_mman.h b/linux-user/ppc/target_mman.h
> new file mode 100644
> index 0000000000..e7ba6070fe
> --- /dev/null
> +++ b/linux-user/ppc/target_mman.h
> @@ -0,0 +1 @@
> +#include "../generic/target_mman.h"
> diff --git a/linux-user/riscv/target_mman.h b/linux-user/riscv/target_mman.h
> new file mode 100644
> index 0000000000..e7ba6070fe
> --- /dev/null
> +++ b/linux-user/riscv/target_mman.h
> @@ -0,0 +1 @@
> +#include "../generic/target_mman.h"
> diff --git a/linux-user/s390x/target_mman.h b/linux-user/s390x/target_mman.h
> new file mode 100644
> index 0000000000..e7ba6070fe
> --- /dev/null
> +++ b/linux-user/s390x/target_mman.h
> @@ -0,0 +1 @@
> +#include "../generic/target_mman.h"
> diff --git a/linux-user/sh4/target_mman.h b/linux-user/sh4/target_mman.h
> new file mode 100644
> index 0000000000..e7ba6070fe
> --- /dev/null
> +++ b/linux-user/sh4/target_mman.h
> @@ -0,0 +1 @@
> +#include "../generic/target_mman.h"
> diff --git a/linux-user/sparc/target_mman.h b/linux-user/sparc/target_mman.h
> new file mode 100644
> index 0000000000..e7ba6070fe
> --- /dev/null
> +++ b/linux-user/sparc/target_mman.h
> @@ -0,0 +1 @@
> +#include "../generic/target_mman.h"
> diff --git a/linux-user/x86_64/target_mman.h b/linux-user/x86_64/target_mman.h
> new file mode 100644
> index 0000000000..e7ba6070fe
> --- /dev/null
> +++ b/linux-user/x86_64/target_mman.h
> @@ -0,0 +1 @@
> +#include "../generic/target_mman.h"
> diff --git a/linux-user/xtensa/target_mman.h b/linux-user/xtensa/target_mman.h
> new file mode 100644
> index 0000000000..e7ba6070fe
> --- /dev/null
> +++ b/linux-user/xtensa/target_mman.h
> @@ -0,0 +1 @@
> +#include "../generic/target_mman.h"

Applied to my linux-user-for-7.2 branch.

Thanks,
Laurent
diff mbox series

Patch

diff --git a/linux-user/aarch64/target_mman.h b/linux-user/aarch64/target_mman.h
new file mode 100644
index 0000000000..e7ba6070fe
--- /dev/null
+++ b/linux-user/aarch64/target_mman.h
@@ -0,0 +1 @@ 
+#include "../generic/target_mman.h"
diff --git a/linux-user/alpha/target_mman.h b/linux-user/alpha/target_mman.h
new file mode 100644
index 0000000000..cd6e3d70a6
--- /dev/null
+++ b/linux-user/alpha/target_mman.h
@@ -0,0 +1,8 @@ 
+#ifndef ALPHA_TARGET_MMAN_H
+#define ALPHA_TARGET_MMAN_H
+
+#define TARGET_MADV_DONTNEED 6
+
+#include "../generic/target_mman.h"
+
+#endif
diff --git a/linux-user/arm/target_mman.h b/linux-user/arm/target_mman.h
new file mode 100644
index 0000000000..e7ba6070fe
--- /dev/null
+++ b/linux-user/arm/target_mman.h
@@ -0,0 +1 @@ 
+#include "../generic/target_mman.h"
diff --git a/linux-user/cris/target_mman.h b/linux-user/cris/target_mman.h
new file mode 100644
index 0000000000..e7ba6070fe
--- /dev/null
+++ b/linux-user/cris/target_mman.h
@@ -0,0 +1 @@ 
+#include "../generic/target_mman.h"
diff --git a/linux-user/generic/target_mman.h b/linux-user/generic/target_mman.h
new file mode 100644
index 0000000000..1436a3c543
--- /dev/null
+++ b/linux-user/generic/target_mman.h
@@ -0,0 +1,92 @@ 
+#ifndef LINUX_USER_TARGET_MMAN_H
+#define LINUX_USER_TARGET_MMAN_H
+
+#ifndef TARGET_MADV_NORMAL
+#define TARGET_MADV_NORMAL 0
+#endif
+
+#ifndef TARGET_MADV_RANDOM
+#define TARGET_MADV_RANDOM 1
+#endif
+
+#ifndef TARGET_MADV_SEQUENTIAL
+#define TARGET_MADV_SEQUENTIAL 2
+#endif
+
+#ifndef TARGET_MADV_WILLNEED
+#define TARGET_MADV_WILLNEED 3
+#endif
+
+#ifndef TARGET_MADV_DONTNEED
+#define TARGET_MADV_DONTNEED 4
+#endif
+
+#ifndef TARGET_MADV_FREE
+#define TARGET_MADV_FREE 8
+#endif
+
+#ifndef TARGET_MADV_REMOVE
+#define TARGET_MADV_REMOVE 9
+#endif
+
+#ifndef TARGET_MADV_DONTFORK
+#define TARGET_MADV_DONTFORK 10
+#endif
+
+#ifndef TARGET_MADV_DOFORK
+#define TARGET_MADV_DOFORK 11
+#endif
+
+#ifndef TARGET_MADV_MERGEABLE
+#define TARGET_MADV_MERGEABLE 12
+#endif
+
+#ifndef TARGET_MADV_UNMERGEABLE
+#define TARGET_MADV_UNMERGEABLE 13
+#endif
+
+#ifndef TARGET_MADV_HUGEPAGE
+#define TARGET_MADV_HUGEPAGE 14
+#endif
+
+#ifndef TARGET_MADV_NOHUGEPAGE
+#define TARGET_MADV_NOHUGEPAGE 15
+#endif
+
+#ifndef TARGET_MADV_DONTDUMP
+#define TARGET_MADV_DONTDUMP 16
+#endif
+
+#ifndef TARGET_MADV_DODUMP
+#define TARGET_MADV_DODUMP 17
+#endif
+
+#ifndef TARGET_MADV_WIPEONFORK
+#define TARGET_MADV_WIPEONFORK 18
+#endif
+
+#ifndef TARGET_MADV_KEEPONFORK
+#define TARGET_MADV_KEEPONFORK 19
+#endif
+
+#ifndef TARGET_MADV_COLD
+#define TARGET_MADV_COLD 20
+#endif
+
+#ifndef TARGET_MADV_PAGEOUT
+#define TARGET_MADV_PAGEOUT 21
+#endif
+
+#ifndef TARGET_MADV_POPULATE_READ
+#define TARGET_MADV_POPULATE_READ 22
+#endif
+
+#ifndef TARGET_MADV_POPULATE_WRITE
+#define TARGET_MADV_POPULATE_WRITE 23
+#endif
+
+#ifndef TARGET_MADV_DONTNEED_LOCKED
+#define TARGET_MADV_DONTNEED_LOCKED 24
+#endif
+
+#endif
diff --git a/linux-user/hexagon/target_mman.h b/linux-user/hexagon/target_mman.h
new file mode 100644
index 0000000000..e7ba6070fe
--- /dev/null
+++ b/linux-user/hexagon/target_mman.h
@@ -0,0 +1 @@ 
+#include "../generic/target_mman.h"
diff --git a/linux-user/hppa/target_mman.h b/linux-user/hppa/target_mman.h
new file mode 100644
index 0000000000..66dd9f7941
--- /dev/null
+++ b/linux-user/hppa/target_mman.h
@@ -0,0 +1,15 @@ 
+#ifndef HPPA_TARGET_MMAN_H
+#define HPPA_TARGET_MMAN_H
+
+#define TARGET_MADV_MERGEABLE 65
+#define TARGET_MADV_UNMERGEABLE 66
+#define TARGET_MADV_HUGEPAGE 67
+#define TARGET_MADV_NOHUGEPAGE 68
+#define TARGET_MADV_DONTDUMP 69
+#define TARGET_MADV_DODUMP 70
+#define TARGET_MADV_WIPEONFORK 71
+#define TARGET_MADV_KEEPONFORK 72
+
+#include "../generic/target_mman.h"
+
+#endif
diff --git a/linux-user/i386/target_mman.h b/linux-user/i386/target_mman.h
new file mode 100644
index 0000000000..e7ba6070fe
--- /dev/null
+++ b/linux-user/i386/target_mman.h
@@ -0,0 +1 @@ 
+#include "../generic/target_mman.h"
diff --git a/linux-user/loongarch64/target_mman.h b/linux-user/loongarch64/target_mman.h
new file mode 100644
index 0000000000..e7ba6070fe
--- /dev/null
+++ b/linux-user/loongarch64/target_mman.h
@@ -0,0 +1 @@ 
+#include "../generic/target_mman.h"
diff --git a/linux-user/m68k/target_mman.h b/linux-user/m68k/target_mman.h
new file mode 100644
index 0000000000..e7ba6070fe
--- /dev/null
+++ b/linux-user/m68k/target_mman.h
@@ -0,0 +1 @@ 
+#include "../generic/target_mman.h"
diff --git a/linux-user/microblaze/target_mman.h b/linux-user/microblaze/target_mman.h
new file mode 100644
index 0000000000..e7ba6070fe
--- /dev/null
+++ b/linux-user/microblaze/target_mman.h
@@ -0,0 +1 @@ 
+#include "../generic/target_mman.h"
diff --git a/linux-user/mips/target_mman.h b/linux-user/mips/target_mman.h
new file mode 100644
index 0000000000..e7ba6070fe
--- /dev/null
+++ b/linux-user/mips/target_mman.h
@@ -0,0 +1 @@ 
+#include "../generic/target_mman.h"
diff --git a/linux-user/mips64/target_mman.h b/linux-user/mips64/target_mman.h
new file mode 100644
index 0000000000..e7ba6070fe
--- /dev/null
+++ b/linux-user/mips64/target_mman.h
@@ -0,0 +1 @@ 
+#include "../generic/target_mman.h"
diff --git a/linux-user/nios2/target_mman.h b/linux-user/nios2/target_mman.h
new file mode 100644
index 0000000000..e7ba6070fe
--- /dev/null
+++ b/linux-user/nios2/target_mman.h
@@ -0,0 +1 @@ 
+#include "../generic/target_mman.h"
diff --git a/linux-user/openrisc/target_mman.h b/linux-user/openrisc/target_mman.h
new file mode 100644
index 0000000000..e7ba6070fe
--- /dev/null
+++ b/linux-user/openrisc/target_mman.h
@@ -0,0 +1 @@ 
+#include "../generic/target_mman.h"
diff --git a/linux-user/ppc/target_mman.h b/linux-user/ppc/target_mman.h
new file mode 100644
index 0000000000..e7ba6070fe
--- /dev/null
+++ b/linux-user/ppc/target_mman.h
@@ -0,0 +1 @@ 
+#include "../generic/target_mman.h"
diff --git a/linux-user/riscv/target_mman.h b/linux-user/riscv/target_mman.h
new file mode 100644
index 0000000000..e7ba6070fe
--- /dev/null
+++ b/linux-user/riscv/target_mman.h
@@ -0,0 +1 @@ 
+#include "../generic/target_mman.h"
diff --git a/linux-user/s390x/target_mman.h b/linux-user/s390x/target_mman.h
new file mode 100644
index 0000000000..e7ba6070fe
--- /dev/null
+++ b/linux-user/s390x/target_mman.h
@@ -0,0 +1 @@ 
+#include "../generic/target_mman.h"
diff --git a/linux-user/sh4/target_mman.h b/linux-user/sh4/target_mman.h
new file mode 100644
index 0000000000..e7ba6070fe
--- /dev/null
+++ b/linux-user/sh4/target_mman.h
@@ -0,0 +1 @@ 
+#include "../generic/target_mman.h"
diff --git a/linux-user/sparc/target_mman.h b/linux-user/sparc/target_mman.h
new file mode 100644
index 0000000000..e7ba6070fe
--- /dev/null
+++ b/linux-user/sparc/target_mman.h
@@ -0,0 +1 @@ 
+#include "../generic/target_mman.h"
diff --git a/linux-user/x86_64/target_mman.h b/linux-user/x86_64/target_mman.h
new file mode 100644
index 0000000000..e7ba6070fe
--- /dev/null
+++ b/linux-user/x86_64/target_mman.h
@@ -0,0 +1 @@ 
+#include "../generic/target_mman.h"
diff --git a/linux-user/xtensa/target_mman.h b/linux-user/xtensa/target_mman.h
new file mode 100644
index 0000000000..e7ba6070fe
--- /dev/null
+++ b/linux-user/xtensa/target_mman.h
@@ -0,0 +1 @@ 
+#include "../generic/target_mman.h"