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

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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;


[Index of Archives]     [Cgroups]     [Netdev]     [Linux Wireless]     [Kernel Newbies]     [Security]     [Linux for Hams]     [Netfilter]     [Bugtraq]     [Yosemite Forum]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux Admin]     [Samba]

  Powered by Linux