diff options
author | Pavel <xemul@openvz.org> | 2006-10-02 05:18:24 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2006-10-02 10:57:22 -0400 |
commit | 5d124e99c2fee1c8f3020ecb0dff8d5617ee7991 (patch) | |
tree | 63a0226278175a8d30d7ff5803421cafea2b2813 | |
parent | fcfbd547b1209aae9d880fe5db33464413925cc8 (diff) |
[PATCH] nsproxy cloning error path fix
This patch fixes copy_namespaces()'s error path.
when new nsproxy (new_ns) is created pointers to namespaces (ipc, uts) are
copied from the old nsproxy. Later in copy_utsname, copy_ipcs, etc.
according namespaces are get-ed. On error path needed namespaces are
put-ed, so there's no need to put new nsproxy itelf as it woud cause
putting namespaces for the second time.
Found when incorporating namespaces into OpenVZ kernel.
Signed-off-by: Pavel Emelianov <xemul@openvz.org>
Acked-by: Serge Hallyn <serue@us.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-rw-r--r-- | kernel/nsproxy.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/kernel/nsproxy.c b/kernel/nsproxy.c index 8d6c852dc51e..6ebdb82a0ce4 100644 --- a/kernel/nsproxy.c +++ b/kernel/nsproxy.c | |||
@@ -123,7 +123,7 @@ out_uts: | |||
123 | put_namespace(new_ns->namespace); | 123 | put_namespace(new_ns->namespace); |
124 | out_ns: | 124 | out_ns: |
125 | tsk->nsproxy = old_ns; | 125 | tsk->nsproxy = old_ns; |
126 | put_nsproxy(new_ns); | 126 | kfree(new_ns); |
127 | goto out; | 127 | goto out; |
128 | } | 128 | } |
129 | 129 | ||