]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
uts: use ns_common_init()
authorChristian Brauner <brauner@kernel.org>
Fri, 12 Sep 2025 11:52:38 +0000 (13:52 +0200)
committerChristian Brauner <brauner@kernel.org>
Fri, 19 Sep 2025 12:26:14 +0000 (14:26 +0200)
Don't cargo-cult the same thing over and over.

Reviewed-by: Jan Kara <jack@suse.cz>
Signed-off-by: Christian Brauner <brauner@kernel.org>
kernel/utsname.c

index b1ac3ca870f24e94dd867bc0cc5fc1541e7b9645..02037010b3780f1ae6a16c7073d89fd6d3568cde 100644 (file)
@@ -27,16 +27,6 @@ static void dec_uts_namespaces(struct ucounts *ucounts)
        dec_ucount(ucounts, UCOUNT_UTS_NAMESPACES);
 }
 
-static struct uts_namespace *create_uts_ns(void)
-{
-       struct uts_namespace *uts_ns;
-
-       uts_ns = kmem_cache_alloc(uts_ns_cache, GFP_KERNEL);
-       if (uts_ns)
-               refcount_set(&uts_ns->ns.count, 1);
-       return uts_ns;
-}
-
 /*
  * Clone a new ns copying an original utsname, setting refcount to 1
  * @old_ns: namespace to clone
@@ -55,17 +45,15 @@ static struct uts_namespace *clone_uts_ns(struct user_namespace *user_ns,
                goto fail;
 
        err = -ENOMEM;
-       ns = create_uts_ns();
+       ns = kmem_cache_zalloc(uts_ns_cache, GFP_KERNEL);
        if (!ns)
                goto fail_dec;
 
-       err = ns_alloc_inum(&ns->ns);
+       err = ns_common_init(&ns->ns, &utsns_operations, true);
        if (err)
                goto fail_free;
 
        ns->ucounts = ucounts;
-       ns->ns.ops = &utsns_operations;
-
        down_read(&uts_sem);
        memcpy(&ns->name, &old_ns->name, sizeof(ns->name));
        ns->user_ns = get_user_ns(user_ns);