aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--kernel/pid_namespace.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/kernel/pid_namespace.c b/kernel/pid_namespace.c
index ea567b78d1aa..598f1eec9826 100644
--- a/kernel/pid_namespace.c
+++ b/kernel/pid_namespace.c
@@ -179,9 +179,12 @@ void zap_pid_ns_processes(struct pid_namespace *pid_ns)
179 rc = sys_wait4(-1, NULL, __WALL, NULL); 179 rc = sys_wait4(-1, NULL, __WALL, NULL);
180 } while (rc != -ECHILD); 180 } while (rc != -ECHILD);
181 181
182 182 /*
183 /* Child reaper for the pid namespace is going away */ 183 * We can not clear ->child_reaper or leave it alone.
184 pid_ns->child_reaper = NULL; 184 * There may by stealth EXIT_DEAD tasks on ->children,
185 * forget_original_parent() must move them somewhere.
186 */
187 pid_ns->child_reaper = init_pid_ns.child_reaper;
185 acct_exit_ns(pid_ns); 188 acct_exit_ns(pid_ns);
186 return; 189 return;
187} 190}