diff options
author | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2007-01-30 16:35:18 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2007-01-30 16:35:18 -0500 |
commit | 444f378b237a0f728f5c4aba752c08d13c209344 (patch) | |
tree | 248fd00bb2e60cb0890fce38b6a66fed65f977e4 /kernel/nsproxy.c | |
parent | 8c8c4bafc3a20a6fb9078315ff865bc42276f9ba (diff) |
Revert "[PATCH] namespaces: fix exit race by splitting exit"
This reverts commit 7a238fcba0629b6f2edbcd37458bae56fcf36be5 in
preparation for a better and simpler fix proposed by Eric Biederman
(and fixed up by Serge Hallyn)
Acked-by: Serge E. Hallyn <serue@us.ibm.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'kernel/nsproxy.c')
-rw-r--r-- | kernel/nsproxy.c | 16 |
1 files changed, 1 insertions, 15 deletions
diff --git a/kernel/nsproxy.c b/kernel/nsproxy.c index 7b05bce75cde..f5b9ee6f6bbb 100644 --- a/kernel/nsproxy.c +++ b/kernel/nsproxy.c | |||
@@ -117,7 +117,7 @@ int copy_namespaces(int flags, struct task_struct *tsk) | |||
117 | goto out_pid; | 117 | goto out_pid; |
118 | 118 | ||
119 | out: | 119 | out: |
120 | put_and_finalize_nsproxy(old_ns); | 120 | put_nsproxy(old_ns); |
121 | return err; | 121 | return err; |
122 | 122 | ||
123 | out_pid: | 123 | out_pid: |
@@ -135,20 +135,6 @@ out_ns: | |||
135 | goto out; | 135 | goto out; |
136 | } | 136 | } |
137 | 137 | ||
138 | struct nsproxy *put_nsproxy(struct nsproxy *ns) | ||
139 | { | ||
140 | if (ns) { | ||
141 | if (atomic_dec_and_test(&ns->count)) { | ||
142 | if (ns->mnt_ns) { | ||
143 | put_mnt_ns(ns->mnt_ns); | ||
144 | ns->mnt_ns = NULL; | ||
145 | } | ||
146 | return ns; | ||
147 | } | ||
148 | } | ||
149 | return NULL; | ||
150 | } | ||
151 | |||
152 | void free_nsproxy(struct nsproxy *ns) | 138 | void free_nsproxy(struct nsproxy *ns) |
153 | { | 139 | { |
154 | if (ns->mnt_ns) | 140 | if (ns->mnt_ns) |