pidns: use kzalloc when allocating new pid_namespace struct
It makes many fields initialization implicit helping in auto-setting #ifdef-ed fields (bsd-acct related pointer will be such). Signed-off-by: Pavel Emelyanov <xemul@openvz.org> Cc: Balbir Singh <balbir@in.ibm.com> Cc: "Eric W. Biederman" <ebiederm@xmission.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
parent
081e4c8a75
commit
84406c153a
@ -71,7 +71,7 @@ static struct pid_namespace *create_pid_namespace(unsigned int level)
|
||||
struct pid_namespace *ns;
|
||||
int i;
|
||||
|
||||
ns = kmem_cache_alloc(pid_ns_cachep, GFP_KERNEL);
|
||||
ns = kmem_cache_zalloc(pid_ns_cachep, GFP_KERNEL);
|
||||
if (ns == NULL)
|
||||
goto out;
|
||||
|
||||
@ -84,17 +84,13 @@ static struct pid_namespace *create_pid_namespace(unsigned int level)
|
||||
goto out_free_map;
|
||||
|
||||
kref_init(&ns->kref);
|
||||
ns->last_pid = 0;
|
||||
ns->child_reaper = NULL;
|
||||
ns->level = level;
|
||||
|
||||
set_bit(0, ns->pidmap[0].page);
|
||||
atomic_set(&ns->pidmap[0].nr_free, BITS_PER_PAGE - 1);
|
||||
|
||||
for (i = 1; i < PIDMAP_ENTRIES; i++) {
|
||||
ns->pidmap[i].page = NULL;
|
||||
for (i = 1; i < PIDMAP_ENTRIES; i++)
|
||||
atomic_set(&ns->pidmap[i].nr_free, BITS_PER_PAGE);
|
||||
}
|
||||
|
||||
return ns;
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user