[S390] Wire up sys_getcpu system call.
Changes
3 files changed · +12 −1
| File | Status | Add | Del | Content |
|---|---|---|---|---|
| arch/s390/kernel/compat_wrapper.S | modified | +7 | −0 | View file |
| arch/s390/kernel/syscalls.S | modified | +2 | −0 | View file |
| include/asm-s390/unistd.h | modified | +3 | −1 | View file |
arch/s390/kernel/compat_wrapper.S
View filediff --git a/arch/s390/kernel/compat_wrapper.S b/arch/s390/kernel/compat_wrapper.S
index 4aabeea..cb0efae 100644
--- a/arch/s390/kernel/compat_wrapper.S
+++ b/arch/s390/kernel/compat_wrapper.S
@@ -1658,3 +1658,10 @@ compat_sys_vmsplice_wrapper:
llgfr %r4,%r4 # unsigned int
llgfr %r5,%r5 # unsigned int
jg compat_sys_vmsplice
+
+ .globl sys_getcpu_wrapper
+sys_getcpu_wrapper:
+ llgtr %r2,%r2 # unsigned *
+ llgtr %r3,%r3 # unsigned *
+ llgtr %r4,%r4 # struct getcpu_cache *
+ jg sys_tee
arch/s390/kernel/syscalls.S
View filediff --git a/arch/s390/kernel/syscalls.S b/arch/s390/kernel/syscalls.S
index 93be1d5..e59baec 100644
--- a/arch/s390/kernel/syscalls.S
+++ b/arch/s390/kernel/syscalls.S
@@ -318,3 +318,5 @@ SYSCALL(sys_splice,sys_splice,sys_splice_wrapper)
SYSCALL(sys_sync_file_range,sys_sync_file_range,sys_sync_file_range_wrapper)
SYSCALL(sys_tee,sys_tee,sys_tee_wrapper)
SYSCALL(sys_vmsplice,sys_vmsplice,compat_sys_vmsplice_wrapper)
+NI_SYSCALL /* 310 sys_move_pages */
+SYSCALL(sys_getcpu,sys_getcpu,sys_getcpu_wrapper)
include/asm-s390/unistd.h
View filediff --git a/include/asm-s390/unistd.h b/include/asm-s390/unistd.h
index 0cccfd8..a19238c 100644
--- a/include/asm-s390/unistd.h
+++ b/include/asm-s390/unistd.h
@@ -247,8 +247,10 @@
#define __NR_sync_file_range 307
#define __NR_tee 308
#define __NR_vmsplice 309
+/* Number 310 is reserved for new sys_move_pages */
+#define __NR_getcpu 311
-#define NR_syscalls 310
+#define NR_syscalls 312
/*
* There are some system calls that are not present on 64 bit, some