compat: lift compat_s64 and compat_u64 to <asm-generic/compat.h>
authorChristoph Hellwig <hch@lst.de>
Thu, 17 Sep 2020 07:41:57 +0000 (09:41 +0200)
committerAl Viro <viro@zeniv.linux.org.uk>
Thu, 17 Sep 2020 17:00:46 +0000 (13:00 -0400)
lift the compat_s64 and compat_u64 definitions into common code using the
COMPAT_FOR_U64_ALIGNMENT symbol for the x86 special case.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
arch/arm64/include/asm/compat.h
arch/mips/include/asm/compat.h
arch/parisc/include/asm/compat.h
arch/powerpc/include/asm/compat.h
arch/s390/include/asm/compat.h
arch/sparc/include/asm/compat.h
arch/x86/include/asm/compat.h
include/asm-generic/compat.h

index 935d2aa231bf066e21d08d15d11eb5246b40d203..23a9fb73c04ff84f57518775b6ec98a24a0ad36d 100644 (file)
@@ -35,8 +35,6 @@ typedef s32           compat_nlink_t;
 typedef u16            compat_ipc_pid_t;
 typedef u32            compat_caddr_t;
 typedef __kernel_fsid_t        compat_fsid_t;
-typedef s64            compat_s64;
-typedef u64            compat_u64;
 
 struct compat_stat {
 #ifdef __AARCH64EB__
index 255afcdd79c94be96fd4116c20aeb609f80e5221..65975712a22dcfaa7d5fabe1a2d7b2b847a4d94c 100644 (file)
@@ -26,8 +26,6 @@ typedef s32           compat_caddr_t;
 typedef struct {
        s32     val[2];
 } compat_fsid_t;
-typedef s64            compat_s64;
-typedef u64            compat_u64;
 
 struct compat_stat {
        compat_dev_t    st_dev;
index 2f4f66a3bac079aa6434514d91da8581891b9e3e..8f33085ff1bd88ad7a46f32adeb4794587027668 100644 (file)
@@ -22,8 +22,6 @@ typedef u32   compat_dev_t;
 typedef u16    compat_nlink_t;
 typedef u16    compat_ipc_pid_t;
 typedef u32    compat_caddr_t;
-typedef s64    compat_s64;
-typedef u64    compat_u64;
 
 struct compat_stat {
        compat_dev_t            st_dev; /* dev_t is 32 bits on parisc */
index 3e3cdfaa76c6a5cac084d7ce8451f9dcc6fd5535..9191fc29e6ed11e4d183e09125f6cb73e0dd7943 100644 (file)
@@ -27,8 +27,6 @@ typedef s16           compat_nlink_t;
 typedef u16            compat_ipc_pid_t;
 typedef u32            compat_caddr_t;
 typedef __kernel_fsid_t        compat_fsid_t;
-typedef s64            compat_s64;
-typedef u64            compat_u64;
 
 struct compat_stat {
        compat_dev_t    st_dev;
index 9547cd5d6cdc21dad62657159b4a764a2bcbaee6..ea5b9c34b7be5bbd7915abbbec211df022004989 100644 (file)
@@ -63,8 +63,6 @@ typedef u16           compat_nlink_t;
 typedef u16            compat_ipc_pid_t;
 typedef u32            compat_caddr_t;
 typedef __kernel_fsid_t        compat_fsid_t;
-typedef s64            compat_s64;
-typedef u64            compat_u64;
 
 typedef struct {
        u32 mask;
index 40a267b3bd5208ce26685b8ce7fe96d7bc703740..b85842cda99fe0d534b168f87559df6cf6e9b190 100644 (file)
@@ -21,8 +21,7 @@ typedef s16           compat_nlink_t;
 typedef u16            compat_ipc_pid_t;
 typedef u32            compat_caddr_t;
 typedef __kernel_fsid_t        compat_fsid_t;
-typedef s64            compat_s64;
-typedef u64            compat_u64;
+
 struct compat_stat {
        compat_dev_t    st_dev;
        compat_ino_t    st_ino;
index d4edf281fff49db852fa9149e1b51249a49ae66d..bf547701f41f878a4a7d380975787f219a26bcf6 100644 (file)
@@ -27,8 +27,6 @@ typedef u16           compat_nlink_t;
 typedef u16            compat_ipc_pid_t;
 typedef u32            compat_caddr_t;
 typedef __kernel_fsid_t        compat_fsid_t;
-typedef s64 __attribute__((aligned(4))) compat_s64;
-typedef u64 __attribute__((aligned(4))) compat_u64;
 
 struct compat_stat {
        compat_dev_t    st_dev;
index a86f65bffab8d0da0038215c0f1797c8f5936f1f..30f7b18a36f9393a50cc65f3fe7380ffa6461e33 100644 (file)
@@ -22,4 +22,12 @@ typedef u32 compat_ulong_t;
 typedef u32 compat_uptr_t;
 typedef u32 compat_aio_context_t;
 
+#ifdef CONFIG_COMPAT_FOR_U64_ALIGNMENT
+typedef s64 __attribute__((aligned(4))) compat_s64;
+typedef u64 __attribute__((aligned(4))) compat_u64;
+#else
+typedef s64 compat_s64;
+typedef u64 compat_u64;
+#endif
+
 #endif