[Devel] [patch -mm] namespaces: exit_task_namespaces() invalidates nsproxy

Cedric Le Goater clg at fr.ibm.com
Thu Sep 21 09:20:59 PDT 2006


exit_task_namespaces() has replaced the former exit_namespace(). It
invalidates task->nsproxy and associated namespaces. This is an issue
for the (futur) pid namespace which is required to be valid in
exit_notify().

This patch moves exit_task_namespaces() after exit_notify() to keep
nsproxy valid.

Signed-off-by: Cedric Le Goater <clg at fr.ibm.com>
---
 kernel/exit.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Index: 2.6.18-rc7-mm1/kernel/exit.c
===================================================================
--- 2.6.18-rc7-mm1.orig/kernel/exit.c
+++ 2.6.18-rc7-mm1/kernel/exit.c
@@ -922,7 +922,6 @@ fastcall NORET_TYPE void do_exit(long co
 	exit_sem(tsk);
 	__exit_files(tsk);
 	__exit_fs(tsk);
-	exit_task_namespaces(tsk);
 	exit_thread();
 	cpuset_exit(tsk);
 	exit_keys(tsk);
@@ -937,6 +936,7 @@ fastcall NORET_TYPE void do_exit(long co
 	tsk->exit_code = code;
 	proc_exit_connector(tsk);
 	exit_notify(tsk);
+	exit_task_namespaces(tsk);
 #ifdef CONFIG_NUMA
 	mpol_free(tsk->mempolicy);
 	tsk->mempolicy = NULL;
_______________________________________________
Containers mailing list
Containers at lists.osdl.org
https://lists.osdl.org/mailman/listinfo/containers




More information about the Devel mailing list