Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm...
[cascardo/linux.git] / ipc / namespace.c
index 068caf1..04cb07e 100644 (file)
@@ -34,8 +34,11 @@ static struct ipc_namespace *create_ipc_ns(struct user_namespace *user_ns,
        ns->ns.ops = &ipcns_operations;
 
        atomic_set(&ns->count, 1);
+       ns->user_ns = get_user_ns(user_ns);
+
        err = mq_init_ns(ns);
        if (err) {
+               put_user_ns(ns->user_ns);
                ns_free_inum(&ns->ns);
                kfree(ns);
                return ERR_PTR(err);
@@ -46,8 +49,6 @@ static struct ipc_namespace *create_ipc_ns(struct user_namespace *user_ns,
        msg_init_ns(ns);
        shm_init_ns(ns);
 
-       ns->user_ns = get_user_ns(user_ns);
-
        return ns;
 }