Messages in this thread | | | Date | Mon, 17 Dec 2012 13:34:28 +0100 | From | Oleg Nesterov <> | Subject | Re: + core_pattern-set-core-helpers-root-and-namespace-to-crashing-process .patch added to -mm tree |
| |
@@ -455,6 +468,14 @@ static int umh_pipe_setup(struct subproc /* and disallow core files too */ current->signal->rlim[RLIMIT_CORE] = (struct rlimit){1, 1}; + + if (cp->switch_ns) { + get_fs_root(cp->cprocess->fs, &root); + set_fs_root(current->fs, &root); + switch_task_namespaces(current, cp->cprocess->nsproxy);
How? You can't simply change ->nsproxy this way.
If nothing else this breaks sys_getpid(), no?
And a lot more problems, afaics. For example, this thread can continue to run after, say, this cprocess->nsproxy->pid_ns was already destroyed. zap_pid_ns_processes() obviously won't see this thread.
Even ->nsproxy itself can go away. Just suppose that the coredumping task is the only process in this namespace (sub-init).
Oleg.
| |