[PATCH] identifier to nsproxy
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 <clg@fr.ibm.com> Cc: Kirill Korotaev <dev@openvz.org> Cc: Eric W. Biederman <ebiederm@xmission.com> Cc: Herbert Poetzl <herbert@13thfloor.at> Cc: Sukadev Bhattiprolu <sukadev@us.ibm.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
This commit is contained in:
parent
6b3286ed11
commit
373beb35cd
|
@ -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) \
|
||||
|
|
|
@ -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;
|
||||
|
|
|
@ -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;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue