Skip to content

Commit

Permalink
[PATCH] identifier to nsproxy
Browse files Browse the repository at this point in the history
Add an identifier to nsproxy.  The default init_ns_proxy has identifier 0 and
allocated nsproxies are given -1.

This identifier will be used by a new syscall sys_bind_ns.

Signed-off-by: Cedric Le Goater <[email protected]>
Cc: Kirill Korotaev <[email protected]>
Cc: Eric W. Biederman <[email protected]>
Cc: Herbert Poetzl <[email protected]>
Cc: Sukadev Bhattiprolu <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
  • Loading branch information
Cedric Le Goater authored and Linus Torvalds committed Dec 8, 2006
1 parent 6b3286e commit 373beb3
Show file tree
Hide file tree
Showing 3 changed files with 5 additions and 1 deletion.
1 change: 1 addition & 0 deletions include/linux/init_task.h
Original file line number Diff line number Diff line change
Expand Up @@ -75,6 +75,7 @@ extern struct nsproxy init_nsproxy;
#define INIT_NSPROXY(nsproxy) { \
.count = ATOMIC_INIT(1), \
.nslock = __SPIN_LOCK_UNLOCKED(nsproxy.nslock), \
.id = 0, \
.uts_ns = &init_uts_ns, \
.mnt_ns = NULL, \
INIT_IPC_NS(ipc_ns) \
Expand Down
1 change: 1 addition & 0 deletions include/linux/nsproxy.h
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,7 @@ struct ipc_namespace;
struct nsproxy {
atomic_t count;
spinlock_t nslock;
unsigned long id;
struct uts_namespace *uts_ns;
struct ipc_namespace *ipc_ns;
struct mnt_namespace *mnt_ns;
Expand Down
4 changes: 3 additions & 1 deletion kernel/nsproxy.c
Original file line number Diff line number Diff line change
Expand Up @@ -45,8 +45,10 @@ static inline struct nsproxy *clone_namespaces(struct nsproxy *orig)
struct nsproxy *ns;

ns = kmemdup(orig, sizeof(struct nsproxy), GFP_KERNEL);
if (ns)
if (ns) {
atomic_set(&ns->count, 1);
ns->id = -1;
}
return ns;
}

Expand Down

0 comments on commit 373beb3

Please sign in to comment.