Re: +core_pattern-set-core-helpers-root-and-namespace-to-crashing-process.patch added to -mm tree
From: Oleg Nesterov
Date: Mon Dec 17 2012 - 07:34:25 EST
@@ -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.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/