From: Arnd Bergmann <a...@arndb.de>

The generated asm/unistd_compat_32.h header file now contains
macros that can be used directly in the vdso and the signal
trampolines, so remove the duplicate definitions.

Signed-off-by: Arnd Bergmann <a...@arndb.de>
---
 arch/arm64/include/asm/seccomp.h               | 10 +++++-----
 arch/arm64/include/asm/unistd.h                | 15 ---------------
 .../include/asm/vdso/compat_gettimeofday.h     | 12 ++++++------
 arch/arm64/kernel/signal32.c                   |  2 +-
 arch/arm64/kernel/sigreturn32.S                | 18 +++++++++---------
 5 files changed, 21 insertions(+), 36 deletions(-)

diff --git a/arch/arm64/include/asm/seccomp.h b/arch/arm64/include/asm/seccomp.h
index c83ca2c8b936..b83975555314 100644
--- a/arch/arm64/include/asm/seccomp.h
+++ b/arch/arm64/include/asm/seccomp.h
@@ -8,13 +8,13 @@
 #ifndef _ASM_SECCOMP_H
 #define _ASM_SECCOMP_H
 
-#include <asm/unistd.h>
+#include <asm/unistd_compat_32.h>
 
 #ifdef CONFIG_COMPAT
-#define __NR_seccomp_read_32           __NR_compat_read
-#define __NR_seccomp_write_32          __NR_compat_write
-#define __NR_seccomp_exit_32           __NR_compat_exit
-#define __NR_seccomp_sigreturn_32      __NR_compat_rt_sigreturn
+#define __NR_seccomp_read_32           __NR_compat32_read
+#define __NR_seccomp_write_32          __NR_compat32_write
+#define __NR_seccomp_exit_32           __NR_compat32_exit
+#define __NR_seccomp_sigreturn_32      __NR_compat32_rt_sigreturn
 #endif /* CONFIG_COMPAT */
 
 #include <asm-generic/seccomp.h>
diff --git a/arch/arm64/include/asm/unistd.h b/arch/arm64/include/asm/unistd.h
index fdd16052f9bc..80618c9bbcd8 100644
--- a/arch/arm64/include/asm/unistd.h
+++ b/arch/arm64/include/asm/unistd.h
@@ -16,21 +16,6 @@
 #define __ARCH_WANT_SYS_FORK
 #define __ARCH_WANT_SYS_VFORK
 
-/*
- * Compat syscall numbers used by the AArch64 kernel.
- */
-#define __NR_compat_restart_syscall    0
-#define __NR_compat_exit               1
-#define __NR_compat_read               3
-#define __NR_compat_write              4
-#define __NR_compat_gettimeofday       78
-#define __NR_compat_sigreturn          119
-#define __NR_compat_rt_sigreturn       173
-#define __NR_compat_clock_gettime      263
-#define __NR_compat_clock_getres       264
-#define __NR_compat_clock_gettime64    403
-#define __NR_compat_clock_getres_time64        406
-
 /*
  * The following SVCs are ARM private.
  */
diff --git a/arch/arm64/include/asm/vdso/compat_gettimeofday.h 
b/arch/arm64/include/asm/vdso/compat_gettimeofday.h
index ecb6fd4c3c64..778c1202bbbf 100644
--- a/arch/arm64/include/asm/vdso/compat_gettimeofday.h
+++ b/arch/arm64/include/asm/vdso/compat_gettimeofday.h
@@ -8,7 +8,7 @@
 #ifndef __ASSEMBLY__
 
 #include <asm/barrier.h>
-#include <asm/unistd.h>
+#include <asm/unistd_compat_32.h>
 #include <asm/errno.h>
 
 #include <asm/vdso/compat_barrier.h>
@@ -24,7 +24,7 @@ int gettimeofday_fallback(struct __kernel_old_timeval *_tv,
        register struct timezone *tz asm("r1") = _tz;
        register struct __kernel_old_timeval *tv asm("r0") = _tv;
        register long ret asm ("r0");
-       register long nr asm("r7") = __NR_compat_gettimeofday;
+       register long nr asm("r7") = __NR_compat32_gettimeofday;
 
        asm volatile(
        "       swi #0\n"
@@ -41,7 +41,7 @@ long clock_gettime_fallback(clockid_t _clkid, struct 
__kernel_timespec *_ts)
        register struct __kernel_timespec *ts asm("r1") = _ts;
        register clockid_t clkid asm("r0") = _clkid;
        register long ret asm ("r0");
-       register long nr asm("r7") = __NR_compat_clock_gettime64;
+       register long nr asm("r7") = __NR_compat32_clock_gettime64;
 
        asm volatile(
        "       swi #0\n"
@@ -58,7 +58,7 @@ long clock_gettime32_fallback(clockid_t _clkid, struct 
old_timespec32 *_ts)
        register struct old_timespec32 *ts asm("r1") = _ts;
        register clockid_t clkid asm("r0") = _clkid;
        register long ret asm ("r0");
-       register long nr asm("r7") = __NR_compat_clock_gettime;
+       register long nr asm("r7") = __NR_compat32_clock_gettime;
 
        asm volatile(
        "       swi #0\n"
@@ -75,7 +75,7 @@ int clock_getres_fallback(clockid_t _clkid, struct 
__kernel_timespec *_ts)
        register struct __kernel_timespec *ts asm("r1") = _ts;
        register clockid_t clkid asm("r0") = _clkid;
        register long ret asm ("r0");
-       register long nr asm("r7") = __NR_compat_clock_getres_time64;
+       register long nr asm("r7") = __NR_compat32_clock_getres_time64;
 
        asm volatile(
        "       swi #0\n"
@@ -92,7 +92,7 @@ int clock_getres32_fallback(clockid_t _clkid, struct 
old_timespec32 *_ts)
        register struct old_timespec32 *ts asm("r1") = _ts;
        register clockid_t clkid asm("r0") = _clkid;
        register long ret asm ("r0");
-       register long nr asm("r7") = __NR_compat_clock_getres;
+       register long nr asm("r7") = __NR_compat32_clock_getres;
 
        asm volatile(
        "       swi #0\n"
diff --git a/arch/arm64/kernel/signal32.c b/arch/arm64/kernel/signal32.c
index bbd542704730..50b74cc5c64d 100644
--- a/arch/arm64/kernel/signal32.c
+++ b/arch/arm64/kernel/signal32.c
@@ -451,7 +451,7 @@ int compat_setup_frame(int usig, struct ksignal *ksig, 
sigset_t *set,
 
 void compat_setup_restart_syscall(struct pt_regs *regs)
 {
-       regs->regs[7] = __NR_compat_restart_syscall;
+       regs->regs[7] = __NR_compat32_restart_syscall;
 }
 
 /*
diff --git a/arch/arm64/kernel/sigreturn32.S b/arch/arm64/kernel/sigreturn32.S
index ccbd4aab4ba4..6f486b95b413 100644
--- a/arch/arm64/kernel/sigreturn32.S
+++ b/arch/arm64/kernel/sigreturn32.S
@@ -13,7 +13,7 @@
  * need two 16-bit instructions.
  */
 
-#include <asm/unistd.h>
+#include <asm/unistd_compat_32.h>
 
        .section .rodata
        .globl __aarch32_sigret_code_start
@@ -22,26 +22,26 @@ __aarch32_sigret_code_start:
        /*
         * ARM Code
         */
-       .byte   __NR_compat_sigreturn, 0x70, 0xa0, 0xe3         // mov  r7, 
#__NR_compat_sigreturn
-       .byte   __NR_compat_sigreturn, 0x00, 0x00, 0xef         // svc  
#__NR_compat_sigreturn
+       .byte   __NR_compat32_sigreturn, 0x70, 0xa0, 0xe3       // mov  r7, 
#__NR_compat32_sigreturn
+       .byte   __NR_compat32_sigreturn, 0x00, 0x00, 0xef       // svc  
#__NR_compat32_sigreturn
 
        /*
         * Thumb code
         */
-       .byte   __NR_compat_sigreturn, 0x27                     // svc  
#__NR_compat_sigreturn
-       .byte   __NR_compat_sigreturn, 0xdf                     // mov  r7, 
#__NR_compat_sigreturn
+       .byte   __NR_compat32_sigreturn, 0x27                   // svc  
#__NR_compat32_sigreturn
+       .byte   __NR_compat32_sigreturn, 0xdf                   // mov  r7, 
#__NR_compat32_sigreturn
 
        /*
         * ARM code
         */
-       .byte   __NR_compat_rt_sigreturn, 0x70, 0xa0, 0xe3      // mov  r7, 
#__NR_compat_rt_sigreturn
-       .byte   __NR_compat_rt_sigreturn, 0x00, 0x00, 0xef      // svc  
#__NR_compat_rt_sigreturn
+       .byte   __NR_compat32_rt_sigreturn, 0x70, 0xa0, 0xe3    // mov  r7, 
#__NR_compat32_rt_sigreturn
+       .byte   __NR_compat32_rt_sigreturn, 0x00, 0x00, 0xef    // svc  
#__NR_compat32_rt_sigreturn
 
        /*
         * Thumb code
         */
-       .byte   __NR_compat_rt_sigreturn, 0x27                  // svc  
#__NR_compat_rt_sigreturn
-       .byte   __NR_compat_rt_sigreturn, 0xdf                  // mov  r7, 
#__NR_compat_rt_sigreturn
+       .byte   __NR_compat32_rt_sigreturn, 0x27                // svc  
#__NR_compat32_rt_sigreturn
+       .byte   __NR_compat32_rt_sigreturn, 0xdf                // mov  r7, 
#__NR_compat32_rt_sigreturn
 
         .globl __aarch32_sigret_code_end
 __aarch32_sigret_code_end:
-- 
2.39.2


_______________________________________________
linux-snps-arc mailing list
linux-snps-arc@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-snps-arc

Reply via email to