]> Pileus Git - ~andy/linux/blobdiff - kernel/pid.c
Merge branch 'kmemleak' of git://linux-arm.org/linux-2.6
[~andy/linux] / kernel / pid.c
index 55fd5900bac87d2bfa6025c340478248e2429137..2e17c9c92cbec3ff3ab5afbb9ec30ce0fbafcb21 100644 (file)
@@ -269,12 +269,11 @@ struct pid *alloc_pid(struct pid_namespace *ns)
        for (type = 0; type < PIDTYPE_MAX; ++type)
                INIT_HLIST_HEAD(&pid->tasks[type]);
 
+       upid = pid->numbers + ns->level;
        spin_lock_irq(&pidmap_lock);
-       for (i = ns->level; i >= 0; i--) {
-               upid = &pid->numbers[i];
+       for ( ; upid >= pid->numbers; --upid)
                hlist_add_head_rcu(&upid->pid_chain,
                                &pid_hash[pid_hashfn(upid->nr, upid->ns)]);
-       }
        spin_unlock_irq(&pidmap_lock);
 
 out: