ns: Wire up the setns system call
32bit and 64bit on x86 are tested and working. The rest I have looked at closely and I can't find any problems. setns is an easy system call to wire up. It just takes two ints so I don't expect any weird architecture porting problems. While doing this I have noticed that we have some architectures that are very slow to get new system calls. cris seems to be the slowest where the last system calls wired up were preadv and pwritev. avr32 is weird in that recvmmsg was wired up but never declared in unistd.h. frv is behind with perf_event_open being the last syscall wired up. On h8300 the last system call wired up was epoll_wait. On m32r the last system call wired up was fallocate. mn10300 has recvmmsg as the last system call wired up. The rest seem to at least have syncfs wired up which was new in the 2.6.39. v2: Most of the architecture support added by Daniel Lezcano <dlezcano@fr.ibm.com> v3: ported to v2.6.36-rc4 by: Eric W. Biederman <ebiederm@xmission.com> v4: Moved wiring up of the system call to another patch v5: ported to v2.6.39-rc6 v6: rebased onto parisc-next and net-next to avoid syscall conflicts. v7: ported to Linus's latest post 2.6.39 tree. > arch/blackfin/include/asm/unistd.h | 3 ++- > arch/blackfin/mach-common/entry.S | 1 + Acked-by: Mike Frysinger <vapier@gentoo.org> Oh - ia64 wiring looks good. Acked-by: Tony Luck <tony.luck@intel.com> Signed-off-by: Eric W. Biederman <ebiederm@xmission.com> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
Родитель
14d74e0cab
Коммит
7b21fddd08
|
@ -456,10 +456,11 @@
|
||||||
#define __NR_open_by_handle_at 498
|
#define __NR_open_by_handle_at 498
|
||||||
#define __NR_clock_adjtime 499
|
#define __NR_clock_adjtime 499
|
||||||
#define __NR_syncfs 500
|
#define __NR_syncfs 500
|
||||||
|
#define __NR_setns 501
|
||||||
|
|
||||||
#ifdef __KERNEL__
|
#ifdef __KERNEL__
|
||||||
|
|
||||||
#define NR_SYSCALLS 501
|
#define NR_SYSCALLS 502
|
||||||
|
|
||||||
#define __ARCH_WANT_IPC_PARSE_VERSION
|
#define __ARCH_WANT_IPC_PARSE_VERSION
|
||||||
#define __ARCH_WANT_OLD_READDIR
|
#define __ARCH_WANT_OLD_READDIR
|
||||||
|
|
|
@ -519,6 +519,7 @@ sys_call_table:
|
||||||
.quad sys_open_by_handle_at
|
.quad sys_open_by_handle_at
|
||||||
.quad sys_clock_adjtime
|
.quad sys_clock_adjtime
|
||||||
.quad sys_syncfs /* 500 */
|
.quad sys_syncfs /* 500 */
|
||||||
|
.quad sys_setns
|
||||||
|
|
||||||
.size sys_call_table, . - sys_call_table
|
.size sys_call_table, . - sys_call_table
|
||||||
.type sys_call_table, @object
|
.type sys_call_table, @object
|
||||||
|
|
|
@ -400,6 +400,7 @@
|
||||||
#define __NR_open_by_handle_at (__NR_SYSCALL_BASE+371)
|
#define __NR_open_by_handle_at (__NR_SYSCALL_BASE+371)
|
||||||
#define __NR_clock_adjtime (__NR_SYSCALL_BASE+372)
|
#define __NR_clock_adjtime (__NR_SYSCALL_BASE+372)
|
||||||
#define __NR_syncfs (__NR_SYSCALL_BASE+373)
|
#define __NR_syncfs (__NR_SYSCALL_BASE+373)
|
||||||
|
#define __NR_setns (__NR_SYSCALL_BASE+374)
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* The following SWIs are ARM private.
|
* The following SWIs are ARM private.
|
||||||
|
|
|
@ -383,6 +383,7 @@
|
||||||
CALL(sys_open_by_handle_at)
|
CALL(sys_open_by_handle_at)
|
||||||
CALL(sys_clock_adjtime)
|
CALL(sys_clock_adjtime)
|
||||||
CALL(sys_syncfs)
|
CALL(sys_syncfs)
|
||||||
|
CALL(sys_setns)
|
||||||
#ifndef syscalls_counted
|
#ifndef syscalls_counted
|
||||||
.equ syscalls_padding, ((NR_syscalls + 3) & ~3) - NR_syscalls
|
.equ syscalls_padding, ((NR_syscalls + 3) & ~3) - NR_syscalls
|
||||||
#define syscalls_counted
|
#define syscalls_counted
|
||||||
|
|
|
@ -299,9 +299,10 @@
|
||||||
#define __NR_signalfd 279
|
#define __NR_signalfd 279
|
||||||
/* 280 was __NR_timerfd */
|
/* 280 was __NR_timerfd */
|
||||||
#define __NR_eventfd 281
|
#define __NR_eventfd 281
|
||||||
|
#define __NR_setns 283
|
||||||
|
|
||||||
#ifdef __KERNEL__
|
#ifdef __KERNEL__
|
||||||
#define NR_syscalls 282
|
#define NR_syscalls 284
|
||||||
|
|
||||||
/* Old stuff */
|
/* Old stuff */
|
||||||
#define __IGNORE_uselib
|
#define __IGNORE_uselib
|
||||||
|
|
|
@ -296,4 +296,5 @@ sys_call_table:
|
||||||
.long sys_ni_syscall /* 280, was sys_timerfd */
|
.long sys_ni_syscall /* 280, was sys_timerfd */
|
||||||
.long sys_eventfd
|
.long sys_eventfd
|
||||||
.long sys_recvmmsg
|
.long sys_recvmmsg
|
||||||
|
.long sys_setns
|
||||||
.long sys_ni_syscall /* r8 is saturated at nr_syscalls */
|
.long sys_ni_syscall /* r8 is saturated at nr_syscalls */
|
||||||
|
|
|
@ -397,8 +397,9 @@
|
||||||
#define __NR_open_by_handle_at 376
|
#define __NR_open_by_handle_at 376
|
||||||
#define __NR_clock_adjtime 377
|
#define __NR_clock_adjtime 377
|
||||||
#define __NR_syncfs 378
|
#define __NR_syncfs 378
|
||||||
|
#define __NR_setns 379
|
||||||
|
|
||||||
#define __NR_syscall 379
|
#define __NR_syscall 380
|
||||||
#define NR_syscalls __NR_syscall
|
#define NR_syscalls __NR_syscall
|
||||||
|
|
||||||
/* Old optional stuff no one actually uses */
|
/* Old optional stuff no one actually uses */
|
||||||
|
|
|
@ -1753,6 +1753,7 @@ ENTRY(_sys_call_table)
|
||||||
.long _sys_open_by_handle_at
|
.long _sys_open_by_handle_at
|
||||||
.long _sys_clock_adjtime
|
.long _sys_clock_adjtime
|
||||||
.long _sys_syncfs
|
.long _sys_syncfs
|
||||||
|
.long _sys_setns
|
||||||
|
|
||||||
.rept NR_syscalls-(.-_sys_call_table)/4
|
.rept NR_syscalls-(.-_sys_call_table)/4
|
||||||
.long _sys_ni_syscall
|
.long _sys_ni_syscall
|
||||||
|
|
|
@ -937,6 +937,7 @@ sys_call_table:
|
||||||
.long sys_inotify_init1
|
.long sys_inotify_init1
|
||||||
.long sys_preadv
|
.long sys_preadv
|
||||||
.long sys_pwritev
|
.long sys_pwritev
|
||||||
|
.long sys_setns /* 335 */
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* NOTE!! This doesn't have to be exact - we just have
|
* NOTE!! This doesn't have to be exact - we just have
|
||||||
|
|
|
@ -880,6 +880,7 @@ sys_call_table:
|
||||||
.long sys_inotify_init1
|
.long sys_inotify_init1
|
||||||
.long sys_preadv
|
.long sys_preadv
|
||||||
.long sys_pwritev
|
.long sys_pwritev
|
||||||
|
.long sys_setns /* 335 */
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* NOTE!! This doesn't have to be exact - we just have
|
* NOTE!! This doesn't have to be exact - we just have
|
||||||
|
|
|
@ -339,10 +339,11 @@
|
||||||
#define __NR_inotify_init1 332
|
#define __NR_inotify_init1 332
|
||||||
#define __NR_preadv 333
|
#define __NR_preadv 333
|
||||||
#define __NR_pwritev 334
|
#define __NR_pwritev 334
|
||||||
|
#define __NR_setns 335
|
||||||
|
|
||||||
#ifdef __KERNEL__
|
#ifdef __KERNEL__
|
||||||
|
|
||||||
#define NR_syscalls 335
|
#define NR_syscalls 336
|
||||||
|
|
||||||
#include <arch/unistd.h>
|
#include <arch/unistd.h>
|
||||||
|
|
||||||
|
|
|
@ -343,10 +343,11 @@
|
||||||
#define __NR_pwritev 334
|
#define __NR_pwritev 334
|
||||||
#define __NR_rt_tgsigqueueinfo 335
|
#define __NR_rt_tgsigqueueinfo 335
|
||||||
#define __NR_perf_event_open 336
|
#define __NR_perf_event_open 336
|
||||||
|
#define __NR_setns 337
|
||||||
|
|
||||||
#ifdef __KERNEL__
|
#ifdef __KERNEL__
|
||||||
|
|
||||||
#define NR_syscalls 337
|
#define NR_syscalls 338
|
||||||
|
|
||||||
#define __ARCH_WANT_IPC_PARSE_VERSION
|
#define __ARCH_WANT_IPC_PARSE_VERSION
|
||||||
/* #define __ARCH_WANT_OLD_READDIR */
|
/* #define __ARCH_WANT_OLD_READDIR */
|
||||||
|
|
|
@ -1526,5 +1526,6 @@ sys_call_table:
|
||||||
.long sys_pwritev
|
.long sys_pwritev
|
||||||
.long sys_rt_tgsigqueueinfo /* 335 */
|
.long sys_rt_tgsigqueueinfo /* 335 */
|
||||||
.long sys_perf_event_open
|
.long sys_perf_event_open
|
||||||
|
.long sys_setns
|
||||||
|
|
||||||
syscall_table_size = (. - sys_call_table)
|
syscall_table_size = (. - sys_call_table)
|
||||||
|
|
|
@ -325,10 +325,11 @@
|
||||||
#define __NR_move_pages 317
|
#define __NR_move_pages 317
|
||||||
#define __NR_getcpu 318
|
#define __NR_getcpu 318
|
||||||
#define __NR_epoll_pwait 319
|
#define __NR_epoll_pwait 319
|
||||||
|
#define __NR_setns 320
|
||||||
|
|
||||||
#ifdef __KERNEL__
|
#ifdef __KERNEL__
|
||||||
|
|
||||||
#define NR_syscalls 320
|
#define NR_syscalls 321
|
||||||
|
|
||||||
#define __ARCH_WANT_IPC_PARSE_VERSION
|
#define __ARCH_WANT_IPC_PARSE_VERSION
|
||||||
#define __ARCH_WANT_OLD_READDIR
|
#define __ARCH_WANT_OLD_READDIR
|
||||||
|
|
|
@ -333,6 +333,7 @@ SYMBOL_NAME_LABEL(sys_call_table)
|
||||||
.long SYMBOL_NAME(sys_ni_syscall) /* sys_move_pages */
|
.long SYMBOL_NAME(sys_ni_syscall) /* sys_move_pages */
|
||||||
.long SYMBOL_NAME(sys_getcpu)
|
.long SYMBOL_NAME(sys_getcpu)
|
||||||
.long SYMBOL_NAME(sys_ni_syscall) /* sys_epoll_pwait */
|
.long SYMBOL_NAME(sys_ni_syscall) /* sys_epoll_pwait */
|
||||||
|
.long SYMBOL_NAME(sys_setns) /* 320 */
|
||||||
|
|
||||||
.macro call_sp addr
|
.macro call_sp addr
|
||||||
mov.l #SYMBOL_NAME(\addr),er6
|
mov.l #SYMBOL_NAME(\addr),er6
|
||||||
|
|
|
@ -319,11 +319,12 @@
|
||||||
#define __NR_open_by_handle_at 1327
|
#define __NR_open_by_handle_at 1327
|
||||||
#define __NR_clock_adjtime 1328
|
#define __NR_clock_adjtime 1328
|
||||||
#define __NR_syncfs 1329
|
#define __NR_syncfs 1329
|
||||||
|
#define __NR_setns 1330
|
||||||
|
|
||||||
#ifdef __KERNEL__
|
#ifdef __KERNEL__
|
||||||
|
|
||||||
|
|
||||||
#define NR_syscalls 306 /* length of syscall table */
|
#define NR_syscalls 307 /* length of syscall table */
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* The following defines stop scripts/checksyscalls.sh from complaining about
|
* The following defines stop scripts/checksyscalls.sh from complaining about
|
||||||
|
|
|
@ -1775,6 +1775,7 @@ sys_call_table:
|
||||||
data8 sys_open_by_handle_at
|
data8 sys_open_by_handle_at
|
||||||
data8 sys_clock_adjtime
|
data8 sys_clock_adjtime
|
||||||
data8 sys_syncfs
|
data8 sys_syncfs
|
||||||
|
data8 sys_setns // 1330
|
||||||
|
|
||||||
.org sys_call_table + 8*NR_syscalls // guard against failures to increase NR_syscalls
|
.org sys_call_table + 8*NR_syscalls // guard against failures to increase NR_syscalls
|
||||||
#endif /* __IA64_ASM_PARAVIRTUALIZED_NATIVE */
|
#endif /* __IA64_ASM_PARAVIRTUALIZED_NATIVE */
|
||||||
|
|
|
@ -330,10 +330,11 @@
|
||||||
/* #define __NR_timerfd 322 removed */
|
/* #define __NR_timerfd 322 removed */
|
||||||
#define __NR_eventfd 323
|
#define __NR_eventfd 323
|
||||||
#define __NR_fallocate 324
|
#define __NR_fallocate 324
|
||||||
|
#define __NR_setns 325
|
||||||
|
|
||||||
#ifdef __KERNEL__
|
#ifdef __KERNEL__
|
||||||
|
|
||||||
#define NR_syscalls 325
|
#define NR_syscalls 326
|
||||||
|
|
||||||
#define __ARCH_WANT_IPC_PARSE_VERSION
|
#define __ARCH_WANT_IPC_PARSE_VERSION
|
||||||
#define __ARCH_WANT_STAT64
|
#define __ARCH_WANT_STAT64
|
||||||
|
|
|
@ -324,3 +324,4 @@ ENTRY(sys_call_table)
|
||||||
.long sys_ni_syscall
|
.long sys_ni_syscall
|
||||||
.long sys_eventfd
|
.long sys_eventfd
|
||||||
.long sys_fallocate
|
.long sys_fallocate
|
||||||
|
.long sys_setns /* 325 */
|
||||||
|
|
|
@ -349,10 +349,11 @@
|
||||||
#define __NR_open_by_handle_at 341
|
#define __NR_open_by_handle_at 341
|
||||||
#define __NR_clock_adjtime 342
|
#define __NR_clock_adjtime 342
|
||||||
#define __NR_syncfs 343
|
#define __NR_syncfs 343
|
||||||
|
#define __NR_setns 344
|
||||||
|
|
||||||
#ifdef __KERNEL__
|
#ifdef __KERNEL__
|
||||||
|
|
||||||
#define NR_syscalls 344
|
#define NR_syscalls 345
|
||||||
|
|
||||||
#define __ARCH_WANT_IPC_PARSE_VERSION
|
#define __ARCH_WANT_IPC_PARSE_VERSION
|
||||||
#define __ARCH_WANT_OLD_READDIR
|
#define __ARCH_WANT_OLD_READDIR
|
||||||
|
|
|
@ -364,4 +364,5 @@ ENTRY(sys_call_table)
|
||||||
.long sys_open_by_handle_at
|
.long sys_open_by_handle_at
|
||||||
.long sys_clock_adjtime
|
.long sys_clock_adjtime
|
||||||
.long sys_syncfs
|
.long sys_syncfs
|
||||||
|
.long sys_setns
|
||||||
|
|
||||||
|
|
|
@ -390,8 +390,9 @@
|
||||||
#define __NR_open_by_handle_at 372
|
#define __NR_open_by_handle_at 372
|
||||||
#define __NR_clock_adjtime 373
|
#define __NR_clock_adjtime 373
|
||||||
#define __NR_syncfs 374
|
#define __NR_syncfs 374
|
||||||
|
#define __NR_setns 375
|
||||||
|
|
||||||
#define __NR_syscalls 375
|
#define __NR_syscalls 376
|
||||||
|
|
||||||
#ifdef __KERNEL__
|
#ifdef __KERNEL__
|
||||||
#ifndef __ASSEMBLY__
|
#ifndef __ASSEMBLY__
|
||||||
|
|
|
@ -379,3 +379,4 @@ ENTRY(sys_call_table)
|
||||||
.long sys_open_by_handle_at
|
.long sys_open_by_handle_at
|
||||||
.long sys_clock_adjtime
|
.long sys_clock_adjtime
|
||||||
.long sys_syncfs
|
.long sys_syncfs
|
||||||
|
.long sys_setns /* 375 */
|
||||||
|
|
|
@ -363,16 +363,17 @@
|
||||||
#define __NR_open_by_handle_at (__NR_Linux + 340)
|
#define __NR_open_by_handle_at (__NR_Linux + 340)
|
||||||
#define __NR_clock_adjtime (__NR_Linux + 341)
|
#define __NR_clock_adjtime (__NR_Linux + 341)
|
||||||
#define __NR_syncfs (__NR_Linux + 342)
|
#define __NR_syncfs (__NR_Linux + 342)
|
||||||
|
#define __NR_setns (__NR_Linux + 343)
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Offset of the last Linux o32 flavoured syscall
|
* Offset of the last Linux o32 flavoured syscall
|
||||||
*/
|
*/
|
||||||
#define __NR_Linux_syscalls 342
|
#define __NR_Linux_syscalls 343
|
||||||
|
|
||||||
#endif /* _MIPS_SIM == _MIPS_SIM_ABI32 */
|
#endif /* _MIPS_SIM == _MIPS_SIM_ABI32 */
|
||||||
|
|
||||||
#define __NR_O32_Linux 4000
|
#define __NR_O32_Linux 4000
|
||||||
#define __NR_O32_Linux_syscalls 342
|
#define __NR_O32_Linux_syscalls 343
|
||||||
|
|
||||||
#if _MIPS_SIM == _MIPS_SIM_ABI64
|
#if _MIPS_SIM == _MIPS_SIM_ABI64
|
||||||
|
|
||||||
|
@ -682,16 +683,17 @@
|
||||||
#define __NR_open_by_handle_at (__NR_Linux + 299)
|
#define __NR_open_by_handle_at (__NR_Linux + 299)
|
||||||
#define __NR_clock_adjtime (__NR_Linux + 300)
|
#define __NR_clock_adjtime (__NR_Linux + 300)
|
||||||
#define __NR_syncfs (__NR_Linux + 301)
|
#define __NR_syncfs (__NR_Linux + 301)
|
||||||
|
#define __NR_setns (__NR_Linux + 302)
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Offset of the last Linux 64-bit flavoured syscall
|
* Offset of the last Linux 64-bit flavoured syscall
|
||||||
*/
|
*/
|
||||||
#define __NR_Linux_syscalls 301
|
#define __NR_Linux_syscalls 302
|
||||||
|
|
||||||
#endif /* _MIPS_SIM == _MIPS_SIM_ABI64 */
|
#endif /* _MIPS_SIM == _MIPS_SIM_ABI64 */
|
||||||
|
|
||||||
#define __NR_64_Linux 5000
|
#define __NR_64_Linux 5000
|
||||||
#define __NR_64_Linux_syscalls 301
|
#define __NR_64_Linux_syscalls 302
|
||||||
|
|
||||||
#if _MIPS_SIM == _MIPS_SIM_NABI32
|
#if _MIPS_SIM == _MIPS_SIM_NABI32
|
||||||
|
|
||||||
|
@ -1006,16 +1008,17 @@
|
||||||
#define __NR_open_by_handle_at (__NR_Linux + 304)
|
#define __NR_open_by_handle_at (__NR_Linux + 304)
|
||||||
#define __NR_clock_adjtime (__NR_Linux + 305)
|
#define __NR_clock_adjtime (__NR_Linux + 305)
|
||||||
#define __NR_syncfs (__NR_Linux + 306)
|
#define __NR_syncfs (__NR_Linux + 306)
|
||||||
|
#define __NR_setns (__NR_Linux + 307)
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Offset of the last N32 flavoured syscall
|
* Offset of the last N32 flavoured syscall
|
||||||
*/
|
*/
|
||||||
#define __NR_Linux_syscalls 306
|
#define __NR_Linux_syscalls 307
|
||||||
|
|
||||||
#endif /* _MIPS_SIM == _MIPS_SIM_NABI32 */
|
#endif /* _MIPS_SIM == _MIPS_SIM_NABI32 */
|
||||||
|
|
||||||
#define __NR_N32_Linux 6000
|
#define __NR_N32_Linux 6000
|
||||||
#define __NR_N32_Linux_syscalls 306
|
#define __NR_N32_Linux_syscalls 307
|
||||||
|
|
||||||
#ifdef __KERNEL__
|
#ifdef __KERNEL__
|
||||||
|
|
||||||
|
|
|
@ -589,6 +589,7 @@ einval: li v0, -ENOSYS
|
||||||
sys sys_open_by_handle_at 3 /* 4340 */
|
sys sys_open_by_handle_at 3 /* 4340 */
|
||||||
sys sys_clock_adjtime 2
|
sys sys_clock_adjtime 2
|
||||||
sys sys_syncfs 1
|
sys sys_syncfs 1
|
||||||
|
sys sys_setns 2
|
||||||
.endm
|
.endm
|
||||||
|
|
||||||
/* We pre-compute the number of _instruction_ bytes needed to
|
/* We pre-compute the number of _instruction_ bytes needed to
|
||||||
|
|
|
@ -428,4 +428,5 @@ sys_call_table:
|
||||||
PTR sys_open_by_handle_at
|
PTR sys_open_by_handle_at
|
||||||
PTR sys_clock_adjtime /* 5300 */
|
PTR sys_clock_adjtime /* 5300 */
|
||||||
PTR sys_syncfs
|
PTR sys_syncfs
|
||||||
|
PTR sys_setns
|
||||||
.size sys_call_table,.-sys_call_table
|
.size sys_call_table,.-sys_call_table
|
||||||
|
|
|
@ -428,4 +428,5 @@ EXPORT(sysn32_call_table)
|
||||||
PTR sys_open_by_handle_at
|
PTR sys_open_by_handle_at
|
||||||
PTR compat_sys_clock_adjtime /* 6305 */
|
PTR compat_sys_clock_adjtime /* 6305 */
|
||||||
PTR sys_syncfs
|
PTR sys_syncfs
|
||||||
|
PTR sys_setns
|
||||||
.size sysn32_call_table,.-sysn32_call_table
|
.size sysn32_call_table,.-sysn32_call_table
|
||||||
|
|
|
@ -546,4 +546,5 @@ sys_call_table:
|
||||||
PTR compat_sys_open_by_handle_at /* 4340 */
|
PTR compat_sys_open_by_handle_at /* 4340 */
|
||||||
PTR compat_sys_clock_adjtime
|
PTR compat_sys_clock_adjtime
|
||||||
PTR sys_syncfs
|
PTR sys_syncfs
|
||||||
|
PTR sys_setns
|
||||||
.size sys_call_table,.-sys_call_table
|
.size sys_call_table,.-sys_call_table
|
||||||
|
|
|
@ -349,10 +349,11 @@
|
||||||
#define __NR_rt_tgsigqueueinfo 336
|
#define __NR_rt_tgsigqueueinfo 336
|
||||||
#define __NR_perf_event_open 337
|
#define __NR_perf_event_open 337
|
||||||
#define __NR_recvmmsg 338
|
#define __NR_recvmmsg 338
|
||||||
|
#define __NR_setns 339
|
||||||
|
|
||||||
#ifdef __KERNEL__
|
#ifdef __KERNEL__
|
||||||
|
|
||||||
#define NR_syscalls 339
|
#define NR_syscalls 340
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* specify the deprecated syscalls we want to support on this arch
|
* specify the deprecated syscalls we want to support on this arch
|
||||||
|
|
|
@ -759,6 +759,7 @@ ENTRY(sys_call_table)
|
||||||
.long sys_rt_tgsigqueueinfo
|
.long sys_rt_tgsigqueueinfo
|
||||||
.long sys_perf_event_open
|
.long sys_perf_event_open
|
||||||
.long sys_recvmmsg
|
.long sys_recvmmsg
|
||||||
|
.long sys_setns
|
||||||
|
|
||||||
|
|
||||||
nr_syscalls=(.-sys_call_table)/4
|
nr_syscalls=(.-sys_call_table)/4
|
||||||
|
|
|
@ -820,8 +820,9 @@
|
||||||
#define __NR_name_to_handle_at (__NR_Linux + 325)
|
#define __NR_name_to_handle_at (__NR_Linux + 325)
|
||||||
#define __NR_open_by_handle_at (__NR_Linux + 326)
|
#define __NR_open_by_handle_at (__NR_Linux + 326)
|
||||||
#define __NR_syncfs (__NR_Linux + 327)
|
#define __NR_syncfs (__NR_Linux + 327)
|
||||||
|
#define __NR_setns (__NR_Linux + 328)
|
||||||
|
|
||||||
#define __NR_Linux_syscalls (__NR_syncfs + 1)
|
#define __NR_Linux_syscalls (__NR_setns + 1)
|
||||||
|
|
||||||
|
|
||||||
#define __IGNORE_select /* newselect */
|
#define __IGNORE_select /* newselect */
|
||||||
|
|
|
@ -426,6 +426,7 @@
|
||||||
ENTRY_SAME(name_to_handle_at) /* 325 */
|
ENTRY_SAME(name_to_handle_at) /* 325 */
|
||||||
ENTRY_COMP(open_by_handle_at)
|
ENTRY_COMP(open_by_handle_at)
|
||||||
ENTRY_SAME(syncfs)
|
ENTRY_SAME(syncfs)
|
||||||
|
ENTRY_SAME(setns)
|
||||||
|
|
||||||
/* Nothing yet */
|
/* Nothing yet */
|
||||||
|
|
||||||
|
|
|
@ -353,3 +353,4 @@ COMPAT_SYS_SPU(open_by_handle_at)
|
||||||
COMPAT_SYS_SPU(clock_adjtime)
|
COMPAT_SYS_SPU(clock_adjtime)
|
||||||
SYSCALL_SPU(syncfs)
|
SYSCALL_SPU(syncfs)
|
||||||
COMPAT_SYS_SPU(sendmmsg)
|
COMPAT_SYS_SPU(sendmmsg)
|
||||||
|
SYSCALL_SPU(setns)
|
||||||
|
|
|
@ -372,10 +372,11 @@
|
||||||
#define __NR_clock_adjtime 347
|
#define __NR_clock_adjtime 347
|
||||||
#define __NR_syncfs 348
|
#define __NR_syncfs 348
|
||||||
#define __NR_sendmmsg 349
|
#define __NR_sendmmsg 349
|
||||||
|
#define __NR_setns 350
|
||||||
|
|
||||||
#ifdef __KERNEL__
|
#ifdef __KERNEL__
|
||||||
|
|
||||||
#define __NR_syscalls 350
|
#define __NR_syscalls 351
|
||||||
|
|
||||||
#define __NR__exit __NR_exit
|
#define __NR__exit __NR_exit
|
||||||
#define NR_syscalls __NR_syscalls
|
#define NR_syscalls __NR_syscalls
|
||||||
|
|
|
@ -276,7 +276,8 @@
|
||||||
#define __NR_open_by_handle_at 336
|
#define __NR_open_by_handle_at 336
|
||||||
#define __NR_clock_adjtime 337
|
#define __NR_clock_adjtime 337
|
||||||
#define __NR_syncfs 338
|
#define __NR_syncfs 338
|
||||||
#define NR_syscalls 339
|
#define __NR_setns 339
|
||||||
|
#define NR_syscalls 340
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* There are some system calls that are not present on 64 bit, some
|
* There are some system calls that are not present on 64 bit, some
|
||||||
|
|
|
@ -1904,3 +1904,9 @@ compat_sys_clock_adjtime_wrapper:
|
||||||
sys_syncfs_wrapper:
|
sys_syncfs_wrapper:
|
||||||
lgfr %r2,%r2 # int
|
lgfr %r2,%r2 # int
|
||||||
jg sys_syncfs
|
jg sys_syncfs
|
||||||
|
|
||||||
|
.globl sys_setns_wrapper
|
||||||
|
sys_setns_wrapper:
|
||||||
|
lgfr %r2,%r2 # int
|
||||||
|
lgfr %r3,%r3 # int
|
||||||
|
jg sys_setns
|
||||||
|
|
|
@ -347,3 +347,4 @@ SYSCALL(sys_name_to_handle_at,sys_name_to_handle_at,sys_name_to_handle_at_wrappe
|
||||||
SYSCALL(sys_open_by_handle_at,sys_open_by_handle_at,compat_sys_open_by_handle_at_wrapper)
|
SYSCALL(sys_open_by_handle_at,sys_open_by_handle_at,compat_sys_open_by_handle_at_wrapper)
|
||||||
SYSCALL(sys_clock_adjtime,sys_clock_adjtime,compat_sys_clock_adjtime_wrapper)
|
SYSCALL(sys_clock_adjtime,sys_clock_adjtime,compat_sys_clock_adjtime_wrapper)
|
||||||
SYSCALL(sys_syncfs,sys_syncfs,sys_syncfs_wrapper)
|
SYSCALL(sys_syncfs,sys_syncfs,sys_syncfs_wrapper)
|
||||||
|
SYSCALL(sys_setns,sys_setns,sys_setns_wrapper)
|
||||||
|
|
|
@ -374,8 +374,9 @@
|
||||||
#define __NR_clock_adjtime 361
|
#define __NR_clock_adjtime 361
|
||||||
#define __NR_syncfs 362
|
#define __NR_syncfs 362
|
||||||
#define __NR_sendmmsg 363
|
#define __NR_sendmmsg 363
|
||||||
|
#define __NR_setns 364
|
||||||
|
|
||||||
#define NR_syscalls 364
|
#define NR_syscalls 365
|
||||||
|
|
||||||
#ifdef __KERNEL__
|
#ifdef __KERNEL__
|
||||||
|
|
||||||
|
|
|
@ -395,10 +395,11 @@
|
||||||
#define __NR_clock_adjtime 372
|
#define __NR_clock_adjtime 372
|
||||||
#define __NR_syncfs 373
|
#define __NR_syncfs 373
|
||||||
#define __NR_sendmmsg 374
|
#define __NR_sendmmsg 374
|
||||||
|
#define __NR_setns 375
|
||||||
|
|
||||||
#ifdef __KERNEL__
|
#ifdef __KERNEL__
|
||||||
|
|
||||||
#define NR_syscalls 375
|
#define NR_syscalls 376
|
||||||
|
|
||||||
#define __ARCH_WANT_IPC_PARSE_VERSION
|
#define __ARCH_WANT_IPC_PARSE_VERSION
|
||||||
#define __ARCH_WANT_OLD_READDIR
|
#define __ARCH_WANT_OLD_READDIR
|
||||||
|
|
|
@ -381,3 +381,4 @@ ENTRY(sys_call_table)
|
||||||
.long sys_clock_adjtime
|
.long sys_clock_adjtime
|
||||||
.long sys_syncfs
|
.long sys_syncfs
|
||||||
.long sys_sendmmsg
|
.long sys_sendmmsg
|
||||||
|
.long sys_setns
|
||||||
|
|
|
@ -401,3 +401,4 @@ sys_call_table:
|
||||||
.long sys_clock_adjtime
|
.long sys_clock_adjtime
|
||||||
.long sys_syncfs
|
.long sys_syncfs
|
||||||
.long sys_sendmmsg
|
.long sys_sendmmsg
|
||||||
|
.long sys_setns /* 375 */
|
||||||
|
|
|
@ -405,8 +405,9 @@
|
||||||
#define __NR_clock_adjtime 334
|
#define __NR_clock_adjtime 334
|
||||||
#define __NR_syncfs 335
|
#define __NR_syncfs 335
|
||||||
#define __NR_sendmmsg 336
|
#define __NR_sendmmsg 336
|
||||||
|
#define __NR_setns 337
|
||||||
|
|
||||||
#define NR_syscalls 337
|
#define NR_syscalls 338
|
||||||
|
|
||||||
#ifdef __32bit_syscall_numbers__
|
#ifdef __32bit_syscall_numbers__
|
||||||
/* Sparc 32-bit only has the "setresuid32", "getresuid32" variants,
|
/* Sparc 32-bit only has the "setresuid32", "getresuid32" variants,
|
||||||
|
|
|
@ -84,4 +84,4 @@ sys_call_table:
|
||||||
/*320*/ .long sys_dup3, sys_pipe2, sys_inotify_init1, sys_accept4, sys_preadv
|
/*320*/ .long sys_dup3, sys_pipe2, sys_inotify_init1, sys_accept4, sys_preadv
|
||||||
/*325*/ .long sys_pwritev, sys_rt_tgsigqueueinfo, sys_perf_event_open, sys_recvmmsg, sys_fanotify_init
|
/*325*/ .long sys_pwritev, sys_rt_tgsigqueueinfo, sys_perf_event_open, sys_recvmmsg, sys_fanotify_init
|
||||||
/*330*/ .long sys_fanotify_mark, sys_prlimit64, sys_name_to_handle_at, sys_open_by_handle_at, sys_clock_adjtime
|
/*330*/ .long sys_fanotify_mark, sys_prlimit64, sys_name_to_handle_at, sys_open_by_handle_at, sys_clock_adjtime
|
||||||
/*335*/ .long sys_syncfs, sys_sendmmsg
|
/*335*/ .long sys_syncfs, sys_sendmmsg, sys_setns
|
||||||
|
|
|
@ -85,7 +85,7 @@ sys_call_table32:
|
||||||
/*320*/ .word sys_dup3, sys_pipe2, sys_inotify_init1, sys_accept4, compat_sys_preadv
|
/*320*/ .word sys_dup3, sys_pipe2, sys_inotify_init1, sys_accept4, compat_sys_preadv
|
||||||
.word compat_sys_pwritev, compat_sys_rt_tgsigqueueinfo, sys_perf_event_open, compat_sys_recvmmsg, sys_fanotify_init
|
.word compat_sys_pwritev, compat_sys_rt_tgsigqueueinfo, sys_perf_event_open, compat_sys_recvmmsg, sys_fanotify_init
|
||||||
/*330*/ .word sys32_fanotify_mark, sys_prlimit64, sys_name_to_handle_at, compat_sys_open_by_handle_at, compat_sys_clock_adjtime
|
/*330*/ .word sys32_fanotify_mark, sys_prlimit64, sys_name_to_handle_at, compat_sys_open_by_handle_at, compat_sys_clock_adjtime
|
||||||
.word sys_syncfs, compat_sys_sendmmsg
|
.word sys_syncfs, compat_sys_sendmmsg, sys_setns
|
||||||
|
|
||||||
#endif /* CONFIG_COMPAT */
|
#endif /* CONFIG_COMPAT */
|
||||||
|
|
||||||
|
@ -162,4 +162,4 @@ sys_call_table:
|
||||||
/*320*/ .word sys_dup3, sys_pipe2, sys_inotify_init1, sys_accept4, sys_preadv
|
/*320*/ .word sys_dup3, sys_pipe2, sys_inotify_init1, sys_accept4, sys_preadv
|
||||||
.word sys_pwritev, sys_rt_tgsigqueueinfo, sys_perf_event_open, sys_recvmmsg, sys_fanotify_init
|
.word sys_pwritev, sys_rt_tgsigqueueinfo, sys_perf_event_open, sys_recvmmsg, sys_fanotify_init
|
||||||
/*330*/ .word sys_fanotify_mark, sys_prlimit64, sys_name_to_handle_at, sys_open_by_handle_at, sys_clock_adjtime
|
/*330*/ .word sys_fanotify_mark, sys_prlimit64, sys_name_to_handle_at, sys_open_by_handle_at, sys_clock_adjtime
|
||||||
.word sys_syncfs, sys_sendmmsg
|
.word sys_syncfs, sys_sendmmsg, sys_setns
|
||||||
|
|
|
@ -849,4 +849,5 @@ ia32_sys_call_table:
|
||||||
.quad compat_sys_clock_adjtime
|
.quad compat_sys_clock_adjtime
|
||||||
.quad sys_syncfs
|
.quad sys_syncfs
|
||||||
.quad compat_sys_sendmmsg /* 345 */
|
.quad compat_sys_sendmmsg /* 345 */
|
||||||
|
.quad sys_setns
|
||||||
ia32_syscall_end:
|
ia32_syscall_end:
|
||||||
|
|
|
@ -351,10 +351,11 @@
|
||||||
#define __NR_clock_adjtime 343
|
#define __NR_clock_adjtime 343
|
||||||
#define __NR_syncfs 344
|
#define __NR_syncfs 344
|
||||||
#define __NR_sendmmsg 345
|
#define __NR_sendmmsg 345
|
||||||
|
#define __NR_setns 346
|
||||||
|
|
||||||
#ifdef __KERNEL__
|
#ifdef __KERNEL__
|
||||||
|
|
||||||
#define NR_syscalls 346
|
#define NR_syscalls 347
|
||||||
|
|
||||||
#define __ARCH_WANT_IPC_PARSE_VERSION
|
#define __ARCH_WANT_IPC_PARSE_VERSION
|
||||||
#define __ARCH_WANT_OLD_READDIR
|
#define __ARCH_WANT_OLD_READDIR
|
||||||
|
|
|
@ -679,6 +679,8 @@ __SYSCALL(__NR_clock_adjtime, sys_clock_adjtime)
|
||||||
__SYSCALL(__NR_syncfs, sys_syncfs)
|
__SYSCALL(__NR_syncfs, sys_syncfs)
|
||||||
#define __NR_sendmmsg 307
|
#define __NR_sendmmsg 307
|
||||||
__SYSCALL(__NR_sendmmsg, sys_sendmmsg)
|
__SYSCALL(__NR_sendmmsg, sys_sendmmsg)
|
||||||
|
#define __NR_setns 308
|
||||||
|
__SYSCALL(__NR_setns, sys_setns)
|
||||||
|
|
||||||
#ifndef __NO_STUBS
|
#ifndef __NO_STUBS
|
||||||
#define __ARCH_WANT_OLD_READDIR
|
#define __ARCH_WANT_OLD_READDIR
|
||||||
|
|
|
@ -345,3 +345,4 @@ ENTRY(sys_call_table)
|
||||||
.long sys_clock_adjtime
|
.long sys_clock_adjtime
|
||||||
.long sys_syncfs
|
.long sys_syncfs
|
||||||
.long sys_sendmmsg /* 345 */
|
.long sys_sendmmsg /* 345 */
|
||||||
|
.long sys_setns
|
||||||
|
|
|
@ -683,8 +683,10 @@ __SYSCALL(305, sys_ni_syscall, 0)
|
||||||
__SYSCALL(306, sys_eventfd, 1)
|
__SYSCALL(306, sys_eventfd, 1)
|
||||||
#define __NR_recvmmsg 307
|
#define __NR_recvmmsg 307
|
||||||
__SYSCALL(307, sys_recvmmsg, 5)
|
__SYSCALL(307, sys_recvmmsg, 5)
|
||||||
|
#define __NR_setns 308
|
||||||
|
__SYSCALL(308, sys_setns, 2)
|
||||||
|
|
||||||
#define __NR_syscall_count 308
|
#define __NR_syscall_count 309
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* sysxtensa syscall handler
|
* sysxtensa syscall handler
|
||||||
|
|
|
@ -681,9 +681,11 @@ __SC_COMP(__NR_open_by_handle_at, sys_open_by_handle_at, \
|
||||||
__SC_COMP(__NR_clock_adjtime, sys_clock_adjtime, compat_sys_clock_adjtime)
|
__SC_COMP(__NR_clock_adjtime, sys_clock_adjtime, compat_sys_clock_adjtime)
|
||||||
#define __NR_syncfs 267
|
#define __NR_syncfs 267
|
||||||
__SYSCALL(__NR_syncfs, sys_syncfs)
|
__SYSCALL(__NR_syncfs, sys_syncfs)
|
||||||
|
#define __NR_setns 268
|
||||||
|
__SYSCALL(__NR_setns, sys_setns)
|
||||||
|
|
||||||
#undef __NR_syscalls
|
#undef __NR_syscalls
|
||||||
#define __NR_syscalls 268
|
#define __NR_syscalls 269
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* All syscalls below here should go away really,
|
* All syscalls below here should go away really,
|
||||||
|
|
Загрузка…
Ссылка в новой задаче