ARM: add migrate_pages() system call
authorArnd Bergmann <arnd@arndb.de>
Sun, 30 Dec 2018 20:43:07 +0000 (21:43 +0100)
committerArnd Bergmann <arnd@arndb.de>
Fri, 25 Jan 2019 16:22:43 +0000 (17:22 +0100)
The migrate_pages system call has an assigned number on all architectures
except ARM. When it got added initially in commit d80ade7b3231 ("ARM:
Fix warning: #warning syscall migrate_pages not implemented"), it was
intentionally left out based on the observation that there are no 32-bit
ARM NUMA systems.

However, there are now arm64 NUMA machines that can in theory run 32-bit
kernels (actually enabling NUMA there would require additional work)
as well as 32-bit user space on 64-bit kernels, so that argument is no
longer very strong.

Assigning the number lets us use the system call on 64-bit kernels as well
as providing a more consistent set of syscalls across architectures.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Acked-by: Catalin Marinas <catalin.marinas@arm.com>
arch/arm/include/asm/unistd.h
arch/arm/tools/syscall.tbl
arch/arm64/include/asm/unistd.h
arch/arm64/include/asm/unistd32.h

index 88ef2ce..d713587 100644 (file)
@@ -45,7 +45,6 @@
  * Unimplemented (or alternatively implemented) syscalls
  */
 #define __IGNORE_fadvise64_64
-#define __IGNORE_migrate_pages
 
 #ifdef __ARM_EABI__
 /*
index 8edf93b..86de9eb 100644 (file)
 397    common  statx                   sys_statx
 398    common  rseq                    sys_rseq
 399    common  io_pgetevents           sys_io_pgetevents
+400    common  migrate_pages           sys_migrate_pages
index a7b1fc5..261216c 100644 (file)
@@ -44,7 +44,7 @@
 #define __ARM_NR_compat_set_tls                (__ARM_NR_COMPAT_BASE + 5)
 #define __ARM_NR_COMPAT_END            (__ARM_NR_COMPAT_BASE + 0x800)
 
-#define __NR_compat_syscalls           400
+#define __NR_compat_syscalls           401
 #endif
 
 #define __ARCH_WANT_SYS_CLONE
index 04ee190..f15bcba 100644 (file)
@@ -821,6 +821,8 @@ __SYSCALL(__NR_statx, sys_statx)
 __SYSCALL(__NR_rseq, sys_rseq)
 #define __NR_io_pgetevents 399
 __SYSCALL(__NR_io_pgetevents, compat_sys_io_pgetevents)
+#define __NR_migrate_pages 400
+__SYSCALL(__NR_migrate_pages, compat_sys_migrate_pages)
 
 /*
  * Please add new compat syscalls above this comment and update