]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
ns: use NS_COMMON_INIT() for all namespaces
authorChristian Brauner <brauner@kernel.org>
Mon, 3 Nov 2025 15:16:01 +0000 (16:16 +0100)
committerChristian Brauner <brauner@kernel.org>
Mon, 3 Nov 2025 16:41:16 +0000 (17:41 +0100)
Now that we have a common initializer use it for all static namespaces.

Signed-off-by: Christian Brauner <brauner@kernel.org>
fs/namespace.c
init/version-timestamp.c
ipc/msgutil.c
kernel/cgroup/cgroup.c
kernel/pid.c
kernel/time/namespace.c
kernel/user.c

index d82910f33dc483f2753058bdd1a546bce9caf77b..7b78dd48b6c356d9cf9cb2027d157f3d3bf6d990 100644 (file)
@@ -5985,11 +5985,8 @@ SYSCALL_DEFINE4(listmount, const struct mnt_id_req __user *, req,
 }
 
 struct mnt_namespace init_mnt_ns = {
-       .ns.inum        = ns_init_inum(&init_mnt_ns),
-       .ns.ops         = &mntns_operations,
+       .ns             = NS_COMMON_INIT(init_mnt_ns, 1),
        .user_ns        = &init_user_ns,
-       .ns.__ns_ref    = REFCOUNT_INIT(1),
-       .ns.ns_type     = ns_common_type(&init_mnt_ns),
        .passive        = REFCOUNT_INIT(1),
        .mounts         = RB_ROOT,
        .poll           = __WAIT_QUEUE_HEAD_INITIALIZER(init_mnt_ns.poll),
index d071835121c2c452a7a57068157ec02e7517e100..56ded64fdfe4092b6a3f87be7c93bf056e6f7e77 100644 (file)
@@ -8,8 +8,7 @@
 #include <linux/utsname.h>
 
 struct uts_namespace init_uts_ns = {
-       .ns.ns_type = ns_common_type(&init_uts_ns),
-       .ns.__ns_ref = REFCOUNT_INIT(2),
+       .ns = NS_COMMON_INIT(init_uts_ns, 2),
        .name = {
                .sysname        = UTS_SYSNAME,
                .nodename       = UTS_NODENAME,
@@ -19,10 +18,6 @@ struct uts_namespace init_uts_ns = {
                .domainname     = UTS_DOMAINNAME,
        },
        .user_ns = &init_user_ns,
-       .ns.inum = ns_init_inum(&init_uts_ns),
-#ifdef CONFIG_UTS_NS
-       .ns.ops = &utsns_operations,
-#endif
 };
 
 /* FIXED STRINGS! Don't touch! */
index 7a03f6d03de3adf7eca26d5cc6bba2580e7d5d3f..55a908ec0674c678a92eb3011ce5587a85e39c8b 100644 (file)
@@ -27,13 +27,8 @@ DEFINE_SPINLOCK(mq_lock);
  * and not CONFIG_IPC_NS.
  */
 struct ipc_namespace init_ipc_ns = {
-       .ns.__ns_ref = REFCOUNT_INIT(1),
+       .ns = NS_COMMON_INIT(init_ipc_ns, 1),
        .user_ns = &init_user_ns,
-       .ns.inum = ns_init_inum(&init_ipc_ns),
-#ifdef CONFIG_IPC_NS
-       .ns.ops = &ipcns_operations,
-#endif
-       .ns.ns_type = ns_common_type(&init_ipc_ns),
 };
 
 struct msg_msgseg {
index 6ae5f48cf64e34e263afb45647848c53ec97a12f..df8bfd26d50215e9b126b2dc09b190bcc09ad4ed 100644 (file)
@@ -250,12 +250,9 @@ bool cgroup_enable_per_threadgroup_rwsem __read_mostly;
 
 /* cgroup namespace for init task */
 struct cgroup_namespace init_cgroup_ns = {
-       .ns.__ns_ref    = REFCOUNT_INIT(2),
+       .ns             = NS_COMMON_INIT(init_cgroup_ns, 2),
        .user_ns        = &init_user_ns,
-       .ns.ops         = &cgroupns_operations,
-       .ns.inum        = ns_init_inum(&init_cgroup_ns),
        .root_cset      = &init_css_set,
-       .ns.ns_type     = ns_common_type(&init_cgroup_ns),
 };
 
 static struct file_system_type cgroup2_fs_type;
index 4fffec767a63adca87406d4a98c2a9c0eab980d1..19d4599c136cf696b172616bcb91785a5f0a28bc 100644 (file)
@@ -71,21 +71,16 @@ static int pid_max_max = PID_MAX_LIMIT;
  * the scheme scales to up to 4 million PIDs, runtime.
  */
 struct pid_namespace init_pid_ns = {
-       .ns.__ns_ref = REFCOUNT_INIT(2),
+       .ns = NS_COMMON_INIT(init_pid_ns, 2),
        .idr = IDR_INIT(init_pid_ns.idr),
        .pid_allocated = PIDNS_ADDING,
        .level = 0,
        .child_reaper = &init_task,
        .user_ns = &init_user_ns,
-       .ns.inum = ns_init_inum(&init_pid_ns),
-#ifdef CONFIG_PID_NS
-       .ns.ops = &pidns_operations,
-#endif
        .pid_max = PID_MAX_DEFAULT,
 #if defined(CONFIG_SYSCTL) && defined(CONFIG_MEMFD_CREATE)
        .memfd_noexec_scope = MEMFD_NOEXEC_SCOPE_EXEC,
 #endif
-       .ns.ns_type = ns_common_type(&init_pid_ns),
 };
 EXPORT_SYMBOL_GPL(init_pid_ns);
 
index 5b6997f4dc3da5fd7b1519bb7ea2c7c8ed30e2b0..19911f88e2b88dd90c30ef83aa33b2570449e3fe 100644 (file)
@@ -478,11 +478,8 @@ const struct proc_ns_operations timens_for_children_operations = {
 };
 
 struct time_namespace init_time_ns = {
-       .ns.ns_type     = ns_common_type(&init_time_ns),
-       .ns.__ns_ref    = REFCOUNT_INIT(3),
+       .ns             = NS_COMMON_INIT(init_time_ns, 3),
        .user_ns        = &init_user_ns,
-       .ns.inum        = ns_init_inum(&init_time_ns),
-       .ns.ops         = &timens_operations,
        .frozen_offsets = true,
 };
 
index 0163665914c97c0d39d9e38a31668483a79cafb4..4b3132e786d9433514433087773196bee52e1b86 100644 (file)
@@ -35,6 +35,7 @@ EXPORT_SYMBOL_GPL(init_binfmt_misc);
  * and 1 for... ?
  */
 struct user_namespace init_user_ns = {
+       .ns = NS_COMMON_INIT(init_user_ns, 3),
        .uid_map = {
                {
                        .extent[0] = {
@@ -65,14 +66,8 @@ struct user_namespace init_user_ns = {
                        .nr_extents = 1,
                },
        },
-       .ns.ns_type = ns_common_type(&init_user_ns),
-       .ns.__ns_ref = REFCOUNT_INIT(3),
        .owner = GLOBAL_ROOT_UID,
        .group = GLOBAL_ROOT_GID,
-       .ns.inum = ns_init_inum(&init_user_ns),
-#ifdef CONFIG_USER_NS
-       .ns.ops = &userns_operations,
-#endif
        .flags = USERNS_INIT_FLAGS,
 #ifdef CONFIG_KEYS
        .keyring_name_list = LIST_HEAD_INIT(init_user_ns.keyring_name_list),