Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 7b21fddd authored by Eric W. Biederman's avatar Eric W. Biederman Committed by Linus Torvalds
Browse files

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: default avatarMike Frysinger <vapier@gentoo.org>

Oh - ia64 wiring looks good.
Acked-by: default avatarTony Luck <tony.luck@intel.com>

Signed-off-by: default avatarEric W. Biederman <ebiederm@xmission.com>
Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
parent 14d74e0c
Loading
Loading
Loading
Loading
+2 −1
Original line number Diff line number Diff line
@@ -456,10 +456,11 @@
#define __NR_open_by_handle_at		498
#define __NR_clock_adjtime		499
#define __NR_syncfs			500
#define __NR_setns			501

#ifdef __KERNEL__

#define NR_SYSCALLS			501
#define NR_SYSCALLS			502

#define __ARCH_WANT_IPC_PARSE_VERSION
#define __ARCH_WANT_OLD_READDIR
+1 −0
Original line number Diff line number Diff line
@@ -519,6 +519,7 @@ sys_call_table:
	.quad sys_open_by_handle_at
	.quad sys_clock_adjtime
	.quad sys_syncfs			/* 500 */
	.quad sys_setns

	.size sys_call_table, . - sys_call_table
	.type sys_call_table, @object
+1 −0
Original line number Diff line number Diff line
@@ -400,6 +400,7 @@
#define __NR_open_by_handle_at		(__NR_SYSCALL_BASE+371)
#define __NR_clock_adjtime		(__NR_SYSCALL_BASE+372)
#define __NR_syncfs			(__NR_SYSCALL_BASE+373)
#define __NR_setns			(__NR_SYSCALL_BASE+374)

/*
 * The following SWIs are ARM private.
+1 −0
Original line number Diff line number Diff line
@@ -383,6 +383,7 @@
		CALL(sys_open_by_handle_at)
		CALL(sys_clock_adjtime)
		CALL(sys_syncfs)
		CALL(sys_setns)
#ifndef syscalls_counted
.equ syscalls_padding, ((NR_syscalls + 3) & ~3) - NR_syscalls
#define syscalls_counted
+2 −1
Original line number Diff line number Diff line
@@ -299,9 +299,10 @@
#define __NR_signalfd		279
/* 280 was __NR_timerfd */
#define __NR_eventfd		281
#define __NR_setns		283

#ifdef __KERNEL__
#define NR_syscalls		282
#define NR_syscalls		284

/* Old stuff */
#define __IGNORE_uselib
Loading