diff options
author | Serge E. Hallyn <serue@us.ibm.com> | 2006-10-02 02:18:06 -0700 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2006-10-02 07:57:20 -0700 |
commit | ab516013ad9ca47f1d3a936fa81303bfbf734d52 (patch) | |
tree | 643ea9c4c3d28958cb42dd87b1856f74edd22b11 /arch | |
parent | b1ba4ddde0cf67991d89f039365eaaeda61aa027 (diff) | |
download | op-kernel-dev-ab516013ad9ca47f1d3a936fa81303bfbf734d52.zip op-kernel-dev-ab516013ad9ca47f1d3a936fa81303bfbf734d52.tar.gz |
[PATCH] namespaces: add nsproxy
This patch adds a nsproxy structure to the task struct. Later patches will
move the fs namespace pointer into this structure, and introduce a new utsname
namespace into the nsproxy.
The vserver and openvz functionality, then, would be implemented in large part
by virtualizing/isolating more and more resources into namespaces, each
contained in the nsproxy.
[akpm@osdl.org: build fix]
Signed-off-by: Serge Hallyn <serue@us.ibm.com>
Cc: Kirill Korotaev <dev@openvz.org>
Cc: "Eric W. Biederman" <ebiederm@xmission.com>
Cc: Herbert Poetzl <herbert@13thfloor.at>
Cc: Andrey Savochkin <saw@sw.ru>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'arch')
-rw-r--r-- | arch/alpha/kernel/init_task.c | 2 | ||||
-rw-r--r-- | arch/arm/kernel/init_task.c | 2 | ||||
-rw-r--r-- | arch/arm26/kernel/init_task.c | 2 | ||||
-rw-r--r-- | arch/frv/kernel/init_task.c | 2 | ||||
-rw-r--r-- | arch/h8300/kernel/init_task.c | 2 | ||||
-rw-r--r-- | arch/i386/kernel/init_task.c | 2 | ||||
-rw-r--r-- | arch/ia64/kernel/init_task.c | 2 | ||||
-rw-r--r-- | arch/m32r/kernel/init_task.c | 2 | ||||
-rw-r--r-- | arch/m68knommu/kernel/init_task.c | 2 | ||||
-rw-r--r-- | arch/mips/kernel/init_task.c | 2 | ||||
-rw-r--r-- | arch/parisc/kernel/init_task.c | 2 | ||||
-rw-r--r-- | arch/powerpc/kernel/init_task.c | 2 | ||||
-rw-r--r-- | arch/s390/kernel/init_task.c | 2 | ||||
-rw-r--r-- | arch/sh/kernel/init_task.c | 2 | ||||
-rw-r--r-- | arch/sh64/kernel/init_task.c | 2 | ||||
-rw-r--r-- | arch/sparc/kernel/init_task.c | 2 | ||||
-rw-r--r-- | arch/sparc64/kernel/init_task.c | 2 | ||||
-rw-r--r-- | arch/um/kernel/init_task.c | 2 | ||||
-rw-r--r-- | arch/v850/kernel/init_task.c | 2 | ||||
-rw-r--r-- | arch/x86_64/kernel/init_task.c | 2 |
20 files changed, 40 insertions, 0 deletions
diff --git a/arch/alpha/kernel/init_task.c b/arch/alpha/kernel/init_task.c index 835d09a..83d0902 100644 --- a/arch/alpha/kernel/init_task.c +++ b/arch/alpha/kernel/init_task.c @@ -5,6 +5,7 @@ #include <linux/init_task.h> #include <linux/fs.h> #include <linux/mqueue.h> +#include <linux/nsproxy.h> #include <asm/uaccess.h> @@ -13,6 +14,7 @@ static struct files_struct init_files = INIT_FILES; static struct signal_struct init_signals = INIT_SIGNALS(init_signals); static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand); struct mm_struct init_mm = INIT_MM(init_mm); +struct nsproxy init_nsproxy = INIT_NSPROXY(init_nsproxy); struct task_struct init_task = INIT_TASK(init_task); EXPORT_SYMBOL(init_mm); diff --git a/arch/arm/kernel/init_task.c b/arch/arm/kernel/init_task.c index a00cca0..80f5eeb 100644 --- a/arch/arm/kernel/init_task.c +++ b/arch/arm/kernel/init_task.c @@ -8,6 +8,7 @@ #include <linux/init.h> #include <linux/init_task.h> #include <linux/mqueue.h> +#include <linux/nsproxy.h> #include <asm/uaccess.h> #include <asm/pgtable.h> @@ -17,6 +18,7 @@ static struct files_struct init_files = INIT_FILES; static struct signal_struct init_signals = INIT_SIGNALS(init_signals); static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand); struct mm_struct init_mm = INIT_MM(init_mm); +struct nsproxy init_nsproxy = INIT_NSPROXY(init_nsproxy); EXPORT_SYMBOL(init_mm); diff --git a/arch/arm26/kernel/init_task.c b/arch/arm26/kernel/init_task.c index 4191565..678c7b5 100644 --- a/arch/arm26/kernel/init_task.c +++ b/arch/arm26/kernel/init_task.c @@ -11,6 +11,7 @@ #include <linux/init.h> #include <linux/init_task.h> #include <linux/mqueue.h> +#include <linux/nsproxy.h> #include <asm/uaccess.h> #include <asm/pgtable.h> @@ -20,6 +21,7 @@ static struct files_struct init_files = INIT_FILES; static struct signal_struct init_signals = INIT_SIGNALS(init_signals); static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand); struct mm_struct init_mm = INIT_MM(init_mm); +struct nsproxy init_nsproxy = INIT_NSPROXY(init_nsproxy); EXPORT_SYMBOL(init_mm); diff --git a/arch/frv/kernel/init_task.c b/arch/frv/kernel/init_task.c index 2299393..5ec27422 100644 --- a/arch/frv/kernel/init_task.c +++ b/arch/frv/kernel/init_task.c @@ -5,6 +5,7 @@ #include <linux/init_task.h> #include <linux/fs.h> #include <linux/mqueue.h> +#include <linux/nsproxy.h> #include <asm/uaccess.h> #include <asm/pgtable.h> @@ -15,6 +16,7 @@ static struct files_struct init_files = INIT_FILES; static struct signal_struct init_signals = INIT_SIGNALS(init_signals); static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand); struct mm_struct init_mm = INIT_MM(init_mm); +struct nsproxy init_nsproxy = INIT_NSPROXY(init_nsproxy); EXPORT_SYMBOL(init_mm); diff --git a/arch/h8300/kernel/init_task.c b/arch/h8300/kernel/init_task.c index 19272c2..ef5755a 100644 --- a/arch/h8300/kernel/init_task.c +++ b/arch/h8300/kernel/init_task.c @@ -8,6 +8,7 @@ #include <linux/init_task.h> #include <linux/fs.h> #include <linux/mqueue.h> +#include <linux/nsproxy.h> #include <asm/uaccess.h> #include <asm/pgtable.h> @@ -17,6 +18,7 @@ static struct files_struct init_files = INIT_FILES; static struct signal_struct init_signals = INIT_SIGNALS(init_signals); static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand); struct mm_struct init_mm = INIT_MM(init_mm); +struct nsproxy init_nsproxy = INIT_NSPROXY(init_nsproxy); EXPORT_SYMBOL(init_mm); diff --git a/arch/i386/kernel/init_task.c b/arch/i386/kernel/init_task.c index cff95d1..bd97f69 100644 --- a/arch/i386/kernel/init_task.c +++ b/arch/i386/kernel/init_task.c @@ -5,6 +5,7 @@ #include <linux/init_task.h> #include <linux/fs.h> #include <linux/mqueue.h> +#include <linux/nsproxy.h> #include <asm/uaccess.h> #include <asm/pgtable.h> @@ -15,6 +16,7 @@ static struct files_struct init_files = INIT_FILES; static struct signal_struct init_signals = INIT_SIGNALS(init_signals); static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand); struct mm_struct init_mm = INIT_MM(init_mm); +struct nsproxy init_nsproxy = INIT_NSPROXY(init_nsproxy); EXPORT_SYMBOL(init_mm); diff --git a/arch/ia64/kernel/init_task.c b/arch/ia64/kernel/init_task.c index b69c397..2d62471 100644 --- a/arch/ia64/kernel/init_task.c +++ b/arch/ia64/kernel/init_task.c @@ -12,6 +12,7 @@ #include <linux/sched.h> #include <linux/init_task.h> #include <linux/mqueue.h> +#include <linux/nsproxy.h> #include <asm/uaccess.h> #include <asm/pgtable.h> @@ -21,6 +22,7 @@ static struct files_struct init_files = INIT_FILES; static struct signal_struct init_signals = INIT_SIGNALS(init_signals); static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand); struct mm_struct init_mm = INIT_MM(init_mm); +struct nsproxy init_nsproxy = INIT_NSPROXY(init_nsproxy); EXPORT_SYMBOL(init_mm); diff --git a/arch/m32r/kernel/init_task.c b/arch/m32r/kernel/init_task.c index 9e508fd..0057475 100644 --- a/arch/m32r/kernel/init_task.c +++ b/arch/m32r/kernel/init_task.c @@ -7,6 +7,7 @@ #include <linux/init_task.h> #include <linux/fs.h> #include <linux/mqueue.h> +#include <linux/nsproxy.h> #include <asm/uaccess.h> #include <asm/pgtable.h> @@ -16,6 +17,7 @@ static struct files_struct init_files = INIT_FILES; static struct signal_struct init_signals = INIT_SIGNALS(init_signals); static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand); struct mm_struct init_mm = INIT_MM(init_mm); +struct nsproxy init_nsproxy = INIT_NSPROXY(init_nsproxy); EXPORT_SYMBOL(init_mm); diff --git a/arch/m68knommu/kernel/init_task.c b/arch/m68knommu/kernel/init_task.c index 3897043..b99fc6d 100644 --- a/arch/m68knommu/kernel/init_task.c +++ b/arch/m68knommu/kernel/init_task.c @@ -8,6 +8,7 @@ #include <linux/init_task.h> #include <linux/fs.h> #include <linux/mqueue.h> +#include <linux/nsproxy.h> #include <asm/uaccess.h> #include <asm/pgtable.h> @@ -17,6 +18,7 @@ static struct files_struct init_files = INIT_FILES; static struct signal_struct init_signals = INIT_SIGNALS(init_signals); static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand); struct mm_struct init_mm = INIT_MM(init_mm); +struct nsproxy init_nsproxy = INIT_NSPROXY(init_nsproxy); EXPORT_SYMBOL(init_mm); diff --git a/arch/mips/kernel/init_task.c b/arch/mips/kernel/init_task.c index aeda7f5..dfe47e6 100644 --- a/arch/mips/kernel/init_task.c +++ b/arch/mips/kernel/init_task.c @@ -4,6 +4,7 @@ #include <linux/init_task.h> #include <linux/fs.h> #include <linux/mqueue.h> +#include <linux/nsproxy.h> #include <asm/thread_info.h> #include <asm/uaccess.h> @@ -14,6 +15,7 @@ static struct files_struct init_files = INIT_FILES; static struct signal_struct init_signals = INIT_SIGNALS(init_signals); static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand); struct mm_struct init_mm = INIT_MM(init_mm); +struct nsproxy init_nsproxy = INIT_NSPROXY(init_nsproxy); EXPORT_SYMBOL(init_mm); diff --git a/arch/parisc/kernel/init_task.c b/arch/parisc/kernel/init_task.c index 8384bf9..c0c43e2 100644 --- a/arch/parisc/kernel/init_task.c +++ b/arch/parisc/kernel/init_task.c @@ -28,6 +28,7 @@ #include <linux/init.h> #include <linux/init_task.h> #include <linux/mqueue.h> +#include <linux/nsproxy.h> #include <asm/uaccess.h> #include <asm/pgtable.h> @@ -38,6 +39,7 @@ static struct files_struct init_files = INIT_FILES; static struct signal_struct init_signals = INIT_SIGNALS(init_signals); static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand); struct mm_struct init_mm = INIT_MM(init_mm); +struct nsproxy init_nsproxy = INIT_NSPROXY(init_nsproxy); EXPORT_SYMBOL(init_mm); diff --git a/arch/powerpc/kernel/init_task.c b/arch/powerpc/kernel/init_task.c index 941043a..e24ace6 100644 --- a/arch/powerpc/kernel/init_task.c +++ b/arch/powerpc/kernel/init_task.c @@ -5,6 +5,7 @@ #include <linux/init_task.h> #include <linux/fs.h> #include <linux/mqueue.h> +#include <linux/nsproxy.h> #include <asm/uaccess.h> static struct fs_struct init_fs = INIT_FS; @@ -12,6 +13,7 @@ static struct files_struct init_files = INIT_FILES; static struct signal_struct init_signals = INIT_SIGNALS(init_signals); static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand); struct mm_struct init_mm = INIT_MM(init_mm); +struct nsproxy init_nsproxy = INIT_NSPROXY(init_nsproxy); EXPORT_SYMBOL(init_mm); diff --git a/arch/s390/kernel/init_task.c b/arch/s390/kernel/init_task.c index d73a740..0918921 100644 --- a/arch/s390/kernel/init_task.c +++ b/arch/s390/kernel/init_task.c @@ -11,6 +11,7 @@ #include <linux/sched.h> #include <linux/init_task.h> #include <linux/mqueue.h> +#include <linux/nsproxy.h> #include <asm/uaccess.h> #include <asm/pgtable.h> @@ -20,6 +21,7 @@ static struct files_struct init_files = INIT_FILES; static struct signal_struct init_signals = INIT_SIGNALS(init_signals); static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand); struct mm_struct init_mm = INIT_MM(init_mm); +struct nsproxy init_nsproxy = INIT_NSPROXY(init_nsproxy); EXPORT_SYMBOL(init_mm); diff --git a/arch/sh/kernel/init_task.c b/arch/sh/kernel/init_task.c index 44053ea..81caf0f 100644 --- a/arch/sh/kernel/init_task.c +++ b/arch/sh/kernel/init_task.c @@ -3,6 +3,7 @@ #include <linux/sched.h> #include <linux/init_task.h> #include <linux/mqueue.h> +#include <linux/nsproxy.h> #include <asm/uaccess.h> #include <asm/pgtable.h> @@ -12,6 +13,7 @@ static struct files_struct init_files = INIT_FILES; static struct signal_struct init_signals = INIT_SIGNALS(init_signals); static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand); struct mm_struct init_mm = INIT_MM(init_mm); +struct nsproxy init_nsproxy = INIT_NSPROXY(init_nsproxy); EXPORT_SYMBOL(init_mm); diff --git a/arch/sh64/kernel/init_task.c b/arch/sh64/kernel/init_task.c index de2d07d..0c95f40 100644 --- a/arch/sh64/kernel/init_task.c +++ b/arch/sh64/kernel/init_task.c @@ -14,6 +14,7 @@ #include <linux/sched.h> #include <linux/init_task.h> #include <linux/mqueue.h> +#include <linux/nsproxy.h> #include <asm/uaccess.h> #include <asm/pgtable.h> @@ -23,6 +24,7 @@ static struct files_struct init_files = INIT_FILES; static struct signal_struct init_signals = INIT_SIGNALS(init_signals); static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand); struct mm_struct init_mm = INIT_MM(init_mm); +struct nsproxy init_nsproxy = INIT_NSPROXY(init_nsproxy); struct pt_regs fake_swapper_regs; diff --git a/arch/sparc/kernel/init_task.c b/arch/sparc/kernel/init_task.c index fc31de6..a73926d 100644 --- a/arch/sparc/kernel/init_task.c +++ b/arch/sparc/kernel/init_task.c @@ -3,6 +3,7 @@ #include <linux/sched.h> #include <linux/init_task.h> #include <linux/mqueue.h> +#include <linux/nsproxy.h> #include <asm/pgtable.h> #include <asm/uaccess.h> @@ -12,6 +13,7 @@ static struct files_struct init_files = INIT_FILES; static struct signal_struct init_signals = INIT_SIGNALS(init_signals); static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand); struct mm_struct init_mm = INIT_MM(init_mm); +struct nsproxy init_nsproxy = INIT_NSPROXY(init_nsproxy); struct task_struct init_task = INIT_TASK(init_task); EXPORT_SYMBOL(init_mm); diff --git a/arch/sparc64/kernel/init_task.c b/arch/sparc64/kernel/init_task.c index 329b38f..f1e9a4b 100644 --- a/arch/sparc64/kernel/init_task.c +++ b/arch/sparc64/kernel/init_task.c @@ -3,6 +3,7 @@ #include <linux/sched.h> #include <linux/init_task.h> #include <linux/mqueue.h> +#include <linux/nsproxy.h> #include <asm/pgtable.h> #include <asm/uaccess.h> @@ -13,6 +14,7 @@ static struct files_struct init_files = INIT_FILES; static struct signal_struct init_signals = INIT_SIGNALS(init_signals); static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand); struct mm_struct init_mm = INIT_MM(init_mm); +struct nsproxy init_nsproxy = INIT_NSPROXY(init_nsproxy); EXPORT_SYMBOL(init_mm); diff --git a/arch/um/kernel/init_task.c b/arch/um/kernel/init_task.c index 49ed5dd..11188af 100644 --- a/arch/um/kernel/init_task.c +++ b/arch/um/kernel/init_task.c @@ -9,6 +9,7 @@ #include "linux/sched.h" #include "linux/init_task.h" #include "linux/mqueue.h" +#include "linux/nsproxy.h" #include "asm/uaccess.h" #include "asm/pgtable.h" #include "user_util.h" @@ -17,6 +18,7 @@ static struct fs_struct init_fs = INIT_FS; struct mm_struct init_mm = INIT_MM(init_mm); +struct nsproxy init_nsproxy = INIT_NSPROXY(init_nsproxy); static struct files_struct init_files = INIT_FILES; static struct signal_struct init_signals = INIT_SIGNALS(init_signals); static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand); diff --git a/arch/v850/kernel/init_task.c b/arch/v850/kernel/init_task.c index ed2f93c..9d2de75 100644 --- a/arch/v850/kernel/init_task.c +++ b/arch/v850/kernel/init_task.c @@ -16,6 +16,7 @@ #include <linux/init_task.h> #include <linux/fs.h> #include <linux/mqueue.h> +#include <linux/nsproxy.h> #include <asm/uaccess.h> #include <asm/pgtable.h> @@ -25,6 +26,7 @@ static struct files_struct init_files = INIT_FILES; static struct signal_struct init_signals = INIT_SIGNALS (init_signals); static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand); struct mm_struct init_mm = INIT_MM (init_mm); +struct nsproxy init_nsproxy = INIT_NSPROXY(init_nsproxy); EXPORT_SYMBOL(init_mm); diff --git a/arch/x86_64/kernel/init_task.c b/arch/x86_64/kernel/init_task.c index 3dc5854..879728b 100644 --- a/arch/x86_64/kernel/init_task.c +++ b/arch/x86_64/kernel/init_task.c @@ -5,6 +5,7 @@ #include <linux/init_task.h> #include <linux/fs.h> #include <linux/mqueue.h> +#include <linux/nsproxy.h> #include <asm/uaccess.h> #include <asm/pgtable.h> @@ -15,6 +16,7 @@ static struct files_struct init_files = INIT_FILES; static struct signal_struct init_signals = INIT_SIGNALS(init_signals); static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand); struct mm_struct init_mm = INIT_MM(init_mm); +struct nsproxy init_nsproxy = INIT_NSPROXY(init_nsproxy); EXPORT_SYMBOL(init_mm); |