ARM: add migrate_pages() system call

The migrate_pages system call has an assigned number on all architectures
except ARM. When it got added initially in commit d80ade7b32 ("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>
This commit is contained in:
Arnd Bergmann 2018-12-30 21:43:07 +01:00
parent 12b57c5c70
commit 78594b9599
4 changed files with 4 additions and 2 deletions

View File

@ -45,7 +45,6 @@
* Unimplemented (or alternatively implemented) syscalls * Unimplemented (or alternatively implemented) syscalls
*/ */
#define __IGNORE_fadvise64_64 #define __IGNORE_fadvise64_64
#define __IGNORE_migrate_pages
#ifdef __ARM_EABI__ #ifdef __ARM_EABI__
/* /*

View File

@ -414,3 +414,4 @@
397 common statx sys_statx 397 common statx sys_statx
398 common rseq sys_rseq 398 common rseq sys_rseq
399 common io_pgetevents sys_io_pgetevents 399 common io_pgetevents sys_io_pgetevents
400 common migrate_pages sys_migrate_pages

View File

@ -44,7 +44,7 @@
#define __ARM_NR_compat_set_tls (__ARM_NR_COMPAT_BASE + 5) #define __ARM_NR_compat_set_tls (__ARM_NR_COMPAT_BASE + 5)
#define __ARM_NR_COMPAT_END (__ARM_NR_COMPAT_BASE + 0x800) #define __ARM_NR_COMPAT_END (__ARM_NR_COMPAT_BASE + 0x800)
#define __NR_compat_syscalls 400 #define __NR_compat_syscalls 401
#endif #endif
#define __ARCH_WANT_SYS_CLONE #define __ARCH_WANT_SYS_CLONE

View File

@ -821,6 +821,8 @@ __SYSCALL(__NR_statx, sys_statx)
__SYSCALL(__NR_rseq, sys_rseq) __SYSCALL(__NR_rseq, sys_rseq)
#define __NR_io_pgetevents 399 #define __NR_io_pgetevents 399
__SYSCALL(__NR_io_pgetevents, compat_sys_io_pgetevents) __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 * Please add new compat syscalls above this comment and update