linux/arch
Pavel Emelyanov b488893a39 pid namespaces: changes to show virtual ids to user
This is the largest patch in the set. Make all (I hope) the places where
the pid is shown to or get from user operate on the virtual pids.

The idea is:
 - all in-kernel data structures must store either struct pid itself
   or the pid's global nr, obtained with pid_nr() call;
 - when seeking the task from kernel code with the stored id one
   should use find_task_by_pid() call that works with global pids;
 - when showing pid's numerical value to the user the virtual one
   should be used, but however when one shows task's pid outside this
   task's namespace the global one is to be used;
 - when getting the pid from userspace one need to consider this as
   the virtual one and use appropriate task/pid-searching functions.

[akpm@linux-foundation.org: build fix]
[akpm@linux-foundation.org: nuther build fix]
[akpm@linux-foundation.org: yet nuther build fix]
[akpm@linux-foundation.org: remove unneeded casts]
Signed-off-by: Pavel Emelyanov <xemul@openvz.org>
Signed-off-by: Alexey Dobriyan <adobriyan@openvz.org>
Cc: Sukadev Bhattiprolu <sukadev@us.ibm.com>
Cc: Oleg Nesterov <oleg@tv-sign.ru>
Cc: Paul Menage <menage@google.com>
Cc: "Eric W. Biederman" <ebiederm@xmission.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2007-10-19 11:53:40 -07:00
..
alpha pid namespaces: define is_global_init() and is_container_init() 2007-10-19 11:53:37 -07:00
arm pid namespaces: define is_global_init() and is_container_init() 2007-10-19 11:53:37 -07:00
avr32 pid namespaces: define is_global_init() and is_container_init() 2007-10-19 11:53:37 -07:00
blackfin PM: Rework struct platform_suspend_ops 2007-10-18 14:37:18 -07:00
cris remove include/asm-*/ipc.h 2007-10-17 08:42:55 -07:00
frv remove include/asm-*/ipc.h 2007-10-17 08:42:55 -07:00
h8300 remove include/asm-*/ipc.h 2007-10-17 08:42:55 -07:00
i386 .gitignore update for x86 arch 2007-10-17 21:19:04 +02:00
ia64 pid namespaces: changes to show virtual ids to user 2007-10-19 11:53:40 -07:00
m32r pid namespaces: define is_global_init() and is_container_init() 2007-10-19 11:53:37 -07:00
m68k pid namespaces: define is_global_init() and is_container_init() 2007-10-19 11:53:37 -07:00
m68knommu remove include/asm-*/ipc.h 2007-10-17 08:42:55 -07:00
mips pid namespaces: define is_global_init() and is_container_init() 2007-10-19 11:53:37 -07:00
parisc pid namespaces: changes to show virtual ids to user 2007-10-19 11:53:40 -07:00
powerpc pid namespaces: define is_global_init() and is_container_init() 2007-10-19 11:53:37 -07:00
ppc pid namespaces: define is_global_init() and is_container_init() 2007-10-19 11:53:37 -07:00
s390 pid namespaces: define is_global_init() and is_container_init() 2007-10-19 11:53:37 -07:00
sh pid namespaces: define is_global_init() and is_container_init() 2007-10-19 11:53:37 -07:00
sh64 pid namespaces: define is_global_init() and is_container_init() 2007-10-19 11:53:37 -07:00
sparc pid namespaces: changes to show virtual ids to user 2007-10-19 11:53:40 -07:00
sparc64 pid namespaces: changes to show virtual ids to user 2007-10-19 11:53:40 -07:00
um pid namespaces: define is_global_init() and is_container_init() 2007-10-19 11:53:37 -07:00
v850 remove include/asm-*/ipc.h 2007-10-17 08:42:55 -07:00
x86 pid namespaces: define is_global_init() and is_container_init() 2007-10-19 11:53:37 -07:00
x86_64 Hibernation: Arbitrary boot kernel support on x86_64 2007-10-18 14:37:19 -07:00
xtensa pid namespaces: define is_global_init() and is_container_init() 2007-10-19 11:53:37 -07:00