mirror of
https://github.com/Fishwaldo/Star64_linux.git
synced 2025-06-22 14:41:27 +00:00
[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>
This commit is contained in:
parent
b1ba4ddde0
commit
ab516013ad
27 changed files with 196 additions and 2 deletions
|
@ -21,6 +21,7 @@
|
|||
#include <linux/tsacct_kern.h>
|
||||
#include <linux/file.h>
|
||||
#include <linux/binfmts.h>
|
||||
#include <linux/nsproxy.h>
|
||||
#include <linux/ptrace.h>
|
||||
#include <linux/profile.h>
|
||||
#include <linux/mount.h>
|
||||
|
@ -397,9 +398,14 @@ void daemonize(const char *name, ...)
|
|||
fs = init_task.fs;
|
||||
current->fs = fs;
|
||||
atomic_inc(&fs->count);
|
||||
|
||||
exit_namespace(current);
|
||||
exit_task_namespaces(current);
|
||||
current->namespace = init_task.namespace;
|
||||
current->nsproxy = init_task.nsproxy;
|
||||
get_namespace(current->namespace);
|
||||
get_task_namespaces(current);
|
||||
|
||||
exit_files(current);
|
||||
current->files = init_task.files;
|
||||
atomic_inc(¤t->files->count);
|
||||
|
@ -918,6 +924,7 @@ fastcall NORET_TYPE void do_exit(long code)
|
|||
__exit_files(tsk);
|
||||
__exit_fs(tsk);
|
||||
exit_namespace(tsk);
|
||||
exit_task_namespaces(tsk);
|
||||
exit_thread();
|
||||
cpuset_exit(tsk);
|
||||
exit_keys(tsk);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue