Просмотр исходного кода

Merge branch 'setns'

* setns:
  ns: Wire up the setns system call

Done as a merge to make it easier to fix up conflicts in arm due to
addition of sendmmsg system call
Linus Torvalds 14 лет назад
Родитель
Сommit
571503e100
50 измененных файлов с 87 добавлено и 29 удалено
  1. 2 1
      arch/alpha/include/asm/unistd.h
  2. 1 0
      arch/alpha/kernel/systbls.S
  3. 1 0
      arch/arm/include/asm/unistd.h
  4. 1 0
      arch/arm/kernel/calls.S
  5. 2 1
      arch/avr32/include/asm/unistd.h
  6. 1 0
      arch/avr32/kernel/syscall_table.S
  7. 2 1
      arch/blackfin/include/asm/unistd.h
  8. 1 0
      arch/blackfin/mach-common/entry.S
  9. 1 0
      arch/cris/arch-v10/kernel/entry.S
  10. 1 0
      arch/cris/arch-v32/kernel/entry.S
  11. 2 1
      arch/cris/include/asm/unistd.h
  12. 2 1
      arch/frv/include/asm/unistd.h
  13. 1 0
      arch/frv/kernel/entry.S
  14. 2 1
      arch/h8300/include/asm/unistd.h
  15. 1 0
      arch/h8300/kernel/syscalls.S
  16. 2 1
      arch/ia64/include/asm/unistd.h
  17. 1 0
      arch/ia64/kernel/entry.S
  18. 2 1
      arch/m32r/include/asm/unistd.h
  19. 1 0
      arch/m32r/kernel/syscall_table.S
  20. 2 1
      arch/m68k/include/asm/unistd.h
  21. 1 0
      arch/m68k/kernel/syscalltable.S
  22. 2 1
      arch/microblaze/include/asm/unistd.h
  23. 1 0
      arch/microblaze/kernel/syscall_table.S
  24. 9 6
      arch/mips/include/asm/unistd.h
  25. 1 0
      arch/mips/kernel/scall32-o32.S
  26. 1 0
      arch/mips/kernel/scall64-64.S
  27. 1 0
      arch/mips/kernel/scall64-n32.S
  28. 1 0
      arch/mips/kernel/scall64-o32.S
  29. 2 1
      arch/mn10300/include/asm/unistd.h
  30. 1 0
      arch/mn10300/kernel/entry.S
  31. 2 1
      arch/parisc/include/asm/unistd.h
  32. 1 0
      arch/parisc/kernel/syscall_table.S
  33. 1 0
      arch/powerpc/include/asm/systbl.h
  34. 2 1
      arch/powerpc/include/asm/unistd.h
  35. 2 1
      arch/s390/include/asm/unistd.h
  36. 6 0
      arch/s390/kernel/compat_wrapper.S
  37. 1 0
      arch/s390/kernel/syscalls.S
  38. 2 1
      arch/sh/include/asm/unistd_32.h
  39. 2 1
      arch/sh/include/asm/unistd_64.h
  40. 1 0
      arch/sh/kernel/syscalls_32.S
  41. 1 0
      arch/sh/kernel/syscalls_64.S
  42. 2 1
      arch/sparc/include/asm/unistd.h
  43. 1 1
      arch/sparc/kernel/systbls_32.S
  44. 2 2
      arch/sparc/kernel/systbls_64.S
  45. 1 0
      arch/x86/ia32/ia32entry.S
  46. 2 1
      arch/x86/include/asm/unistd_32.h
  47. 2 0
      arch/x86/include/asm/unistd_64.h
  48. 1 0
      arch/x86/kernel/syscall_table_32.S
  49. 3 1
      arch/xtensa/include/asm/unistd.h
  50. 3 1
      include/asm-generic/unistd.h

+ 2 - 1
arch/alpha/include/asm/unistd.h

@@ -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

+ 1 - 0
arch/alpha/kernel/systbls.S

@@ -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

+ 1 - 0
arch/arm/include/asm/unistd.h

@@ -401,6 +401,7 @@
 #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_sendmmsg			(__NR_SYSCALL_BASE+374)
 #define __NR_sendmmsg			(__NR_SYSCALL_BASE+374)
+#define __NR_setns			(__NR_SYSCALL_BASE+375)
 
 
 /*
 /*
  * The following SWIs are ARM private.
  * The following SWIs are ARM private.

+ 1 - 0
arch/arm/kernel/calls.S

@@ -384,6 +384,7 @@
 		CALL(sys_clock_adjtime)
 		CALL(sys_clock_adjtime)
 		CALL(sys_syncfs)
 		CALL(sys_syncfs)
 		CALL(sys_sendmmsg)
 		CALL(sys_sendmmsg)
+/* 375 */	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

+ 2 - 1
arch/avr32/include/asm/unistd.h

@@ -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

+ 1 - 0
arch/avr32/kernel/syscall_table.S

@@ -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 */

+ 2 - 1
arch/blackfin/include/asm/unistd.h

@@ -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 */

+ 1 - 0
arch/blackfin/mach-common/entry.S

@@ -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

+ 1 - 0
arch/cris/arch-v10/kernel/entry.S

@@ -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

+ 1 - 0
arch/cris/arch-v32/kernel/entry.S

@@ -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

+ 2 - 1
arch/cris/include/asm/unistd.h

@@ -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>
 
 

+ 2 - 1
arch/frv/include/asm/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 */

+ 1 - 0
arch/frv/kernel/entry.S

@@ -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)

+ 2 - 1
arch/h8300/include/asm/unistd.h

@@ -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

+ 1 - 0
arch/h8300/kernel/syscalls.S

@@ -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

+ 2 - 1
arch/ia64/include/asm/unistd.h

@@ -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

+ 1 - 0
arch/ia64/kernel/entry.S

@@ -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 */

+ 2 - 1
arch/m32r/include/asm/unistd.h

@@ -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

+ 1 - 0
arch/m32r/kernel/syscall_table.S

@@ -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 */

+ 2 - 1
arch/m68k/include/asm/unistd.h

@@ -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

+ 1 - 0
arch/m68k/kernel/syscalltable.S

@@ -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
 
 

+ 2 - 1
arch/microblaze/include/asm/unistd.h

@@ -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__

+ 1 - 0
arch/microblaze/kernel/syscall_table.S

@@ -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 */

+ 9 - 6
arch/mips/include/asm/unistd.h

@@ -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__
 
 

+ 1 - 0
arch/mips/kernel/scall32-o32.S

@@ -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

+ 1 - 0
arch/mips/kernel/scall64-64.S

@@ -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

+ 1 - 0
arch/mips/kernel/scall64-n32.S

@@ -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

+ 1 - 0
arch/mips/kernel/scall64-o32.S

@@ -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

+ 2 - 1
arch/mn10300/include/asm/unistd.h

@@ -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

+ 1 - 0
arch/mn10300/kernel/entry.S

@@ -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

+ 2 - 1
arch/parisc/include/asm/unistd.h

@@ -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 */

+ 1 - 0
arch/parisc/kernel/syscall_table.S

@@ -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 */
 
 

+ 1 - 0
arch/powerpc/include/asm/systbl.h

@@ -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)

+ 2 - 1
arch/powerpc/include/asm/unistd.h

@@ -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

+ 2 - 1
arch/s390/include/asm/unistd.h

@@ -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

+ 6 - 0
arch/s390/kernel/compat_wrapper.S

@@ -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

+ 1 - 0
arch/s390/kernel/syscalls.S

@@ -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)

+ 2 - 1
arch/sh/include/asm/unistd_32.h

@@ -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__
 
 

+ 2 - 1
arch/sh/include/asm/unistd_64.h

@@ -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

+ 1 - 0
arch/sh/kernel/syscalls_32.S

@@ -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

+ 1 - 0
arch/sh/kernel/syscalls_64.S

@@ -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 */

+ 2 - 1
arch/sparc/include/asm/unistd.h

@@ -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,

+ 1 - 1
arch/sparc/kernel/systbls_32.S

@@ -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

+ 2 - 2
arch/sparc/kernel/systbls_64.S

@@ -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

+ 1 - 0
arch/x86/ia32/ia32entry.S

@@ -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:

+ 2 - 1
arch/x86/include/asm/unistd_32.h

@@ -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

+ 2 - 0
arch/x86/include/asm/unistd_64.h

@@ -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

+ 1 - 0
arch/x86/kernel/syscall_table_32.S

@@ -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

+ 3 - 1
arch/xtensa/include/asm/unistd.h

@@ -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

+ 3 - 1
include/asm-generic/unistd.h

@@ -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,