alpha: update syscall macro definitions
authorArnd Bergmann <arnd@arndb.de>
Sun, 30 Dec 2018 14:16:48 +0000 (15:16 +0100)
committerArnd Bergmann <arnd@arndb.de>
Fri, 25 Jan 2019 16:22:20 +0000 (17:22 +0100)
Other architectures commonly use __NR_umount2 for sys_umount,
only ia64 and alpha use __NR_umount here. In order to synchronize
the generated tables, use umount2 like everyone else, and add back
the old name from asm/unistd.h for compatibility.

For shmat, alpha uses the osf_shmat name, we can do the same thing
here, which means we don't have to add an entry in the __IGNORE
list now that shmat is mandatory everywhere

alarm, creat, pause, time, and utime are optional everywhere
these days, no need to list them here any more.

I considered also adding the regular versions of the get*id system
calls that have different names and calling conventions on alpha,
which would further help unify the syscall ABI, but for now
I decided against that.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
arch/alpha/include/asm/unistd.h
arch/alpha/include/uapi/asm/unistd.h
arch/alpha/kernel/syscalls/syscall.tbl

index 21b706a5b772f289fd977cd42e83da8fd68244bc..564ba87bdc383209afbea92adcdf5ddcf7ac4015 100644 (file)
 /*
  * Ignore legacy syscalls that we don't use.
  */
-#define __IGNORE_alarm
-#define __IGNORE_creat
 #define __IGNORE_getegid
 #define __IGNORE_geteuid
 #define __IGNORE_getgid
 #define __IGNORE_getpid
 #define __IGNORE_getppid
 #define __IGNORE_getuid
-#define __IGNORE_pause
-#define __IGNORE_time
-#define __IGNORE_utime
-#define __IGNORE_umount2
 
 /* Alpha doesn't have protection keys. */
 #define __IGNORE_pkey_mprotect
index 9ba724f116f1d129e71e352390c0622e53dc0a88..4507071f995fbd756b7fce7d26529797186c17fb 100644 (file)
@@ -2,6 +2,11 @@
 #ifndef _UAPI_ALPHA_UNISTD_H
 #define _UAPI_ALPHA_UNISTD_H
 
+/* These are traditionally the names linux-alpha uses for
+ * the two otherwise generic system calls */
+#define __NR_umount    __NR_umount2
+#define __NR_osf_shmat __NR_shmat
+
 #include <asm/unistd_32.h>
 
 #endif /* _UAPI_ALPHA_UNISTD_H */
index e09558edae73ae3ba35bc94613c0905138cfe6b6..f920b65e8c498f58069dc7130b0ca2c0658ab546 100644 (file)
@@ -29,7 +29,7 @@
 19     common  lseek                           sys_lseek
 20     common  getxpid                         sys_getxpid
 21     common  osf_mount                       sys_osf_mount
-22     common  umount                          sys_umount
+22     common  umount2                         sys_umount
 23     common  setuid                          sys_setuid
 24     common  getxuid                         sys_getxuid
 25     common  exec_with_loader                sys_ni_syscall
 206    common  semop                           sys_semop
 207    common  osf_utsname                     sys_osf_utsname
 208    common  lchown                          sys_lchown
-209    common  osf_shmat                       sys_shmat
+209    common  shmat                           sys_shmat
 210    common  shmctl                          sys_shmctl
 211    common  shmdt                           sys_shmdt
 212    common  shmget                          sys_shmget