[Devel] [PATCH 7/20] Add support for pid namespaces hierarchy
xemul at openvz.org
xemul at openvz.org
Tue Aug 7 02:29:48 PDT 2007
Each namespace has a parent and is characterized by its "level".
Level is the number of the namespace generation. E.g. init namespace
has level 0, after cloning new one it will have level 1, the next
one - 2 and so on and so forth. This level is not explicitly limited.
True hierarchy must have some way to find each namespace's children,
but it is not used in the patches, so this ability is not added (yet).
Signed-off-by: Pavel Emelyanov <xemul at openvz.org>
---
include/linux/pid_namespace.h | 2 ++
kernel/pid.c | 3 ++-
2 files changed, 4 insertions(+), 1 deletion(-)
--- ./include/linux/pid_namespace.h.ve7 2007-08-06 14:54:42.000000000 +0400
+++ ./include/linux/pid_namespace.h 2007-08-06 14:58:34.000000000 +0400
@@ -21,6 +21,8 @@ struct pid_namespace {
int last_pid;
struct task_struct *child_reaper;
struct kmem_cache *pid_cachep;
+ int level;
+ struct pid_namespace *parent;
};
extern struct pid_namespace init_pid_ns;
--- ./kernel/pid.c.ve7 2007-08-06 14:58:17.000000000 +0400
+++ ./kernel/pid.c 2007-08-06 14:58:19.000000000 +0400
@@ -67,7 +67,8 @@ struct pid_namespace init_pid_ns = {
[ 0 ... PIDMAP_ENTRIES-1] = { ATOMIC_INIT(BITS_PER_PAGE), NULL }
},
.last_pid = 0,
- .child_reaper = &init_task
+ .level = 0,
+ .child_reaper = &init_task,
};
EXPORT_SYMBOL(init_pid_ns);
More information about the Devel
mailing list