[Devel] [PATCH RFC] nsproxy: strengthen the comment above copy_namespaces
Serge E. Hallyn
serue at us.ibm.com
Fri Apr 30 11:36:38 PDT 2010
copy_namespaces() cannot be used on a live task. There are two
reasons - it can be used to assign another task's nsproxy, which
is not legal (for a live task). And, it does not use
rcu_assign_pointer, so even when we're being extra-clever it is
unsafe.
Signed-off-by: Serge Hallyn <serue at us.ibm.com>
---
kernel/nsproxy.c | 3 +++
1 files changed, 3 insertions(+), 0 deletions(-)
diff --git a/kernel/nsproxy.c b/kernel/nsproxy.c
index f74e6c0..67d8f2b 100644
--- a/kernel/nsproxy.c
+++ b/kernel/nsproxy.c
@@ -115,6 +115,9 @@ out_ns:
/*
* called from clone. This now handles copy for nsproxy and all
* namespaces therein.
+ * Note this should only be used in fork. Specifically, tsk should
+ * not yet be a live task. See the the unshare code for how to handle
+ * that.
*/
int copy_namespaces(unsigned long flags, struct task_struct *tsk)
{
--
1.6.3.3
_______________________________________________
Containers mailing list
Containers at lists.linux-foundation.org
https://lists.linux-foundation.org/mailman/listinfo/containers
More information about the Devel
mailing list