Messages in this thread | | | Date | Sun, 20 Jun 2010 20:19:56 +0200 | From | Oleg Nesterov <> | Subject | Re: [PATCH 2/6] pidns: Call pid_ns_prepare_proc from create_pid_namespace |
| |
On 06/20, Eric W. Biederman wrote: > > Reorganize proc_get_sb so it can be called before the struct pid > of the first process is allocated.
This is what
[PATCH 1/4] procfs: proc_get_sb: consolidate/cleanup root_inode->pid logic [PATCH 2/4] procfs: kill the global proc_mnt variable
do. But,
> @@ -96,6 +97,9 @@ static struct pid_namespace *create_pid_namespace(struct pid_namespace *parent_p > for (i = 1; i < PIDMAP_ENTRIES; i++) > atomic_set(&ns->pidmap[i].nr_free, BITS_PER_PAGE); > > + if (pid_ns_prepare_proc(ns)) > + goto out_free_map; > + > return ns;
Afaics, this is wrong.
If pid_ns_prepare_proc() fails we shouldn't blindly return ENOMEM and, more importantly, we need put_pid_ns(parent_ns).
Oleg.
| |