]> Pileus Git - ~andy/linux/blobdiff - net/sysctl_net.c
SELinux: remove needless sel_div function
[~andy/linux] / net / sysctl_net.c
index e75813904f266e158a3df4649ed3813d14f47539..c3e65aebecc08f85b3d5d471d9ce65908f7ea2d8 100644 (file)
@@ -74,15 +74,13 @@ static struct ctl_table_root net_sysctl_ro_root = {
 
 static int __net_init sysctl_net_init(struct net *net)
 {
-       setup_sysctl_set(&net->sysctls,
-                        &net_sysctl_ro_root.default_set,
-                        is_seen);
+       setup_sysctl_set(&net->sysctls, &net_sysctl_root, is_seen);
        return 0;
 }
 
 static void __net_exit sysctl_net_exit(struct net *net)
 {
-       WARN_ON(!list_empty(&net->sysctls.list));
+       retire_sysctl_set(&net->sysctls);
 }
 
 static struct pernet_operations sysctl_pernet_ops = {
@@ -90,36 +88,32 @@ static struct pernet_operations sysctl_pernet_ops = {
        .exit = sysctl_net_exit,
 };
 
-static __init int sysctl_init(void)
+static __init int net_sysctl_init(void)
 {
        int ret;
        ret = register_pernet_subsys(&sysctl_pernet_ops);
        if (ret)
                goto out;
-       register_sysctl_root(&net_sysctl_root);
-       setup_sysctl_set(&net_sysctl_ro_root.default_set, NULL, NULL);
+       setup_sysctl_set(&net_sysctl_ro_root.default_set, &net_sysctl_ro_root, NULL);
        register_sysctl_root(&net_sysctl_ro_root);
+       register_sysctl_root(&net_sysctl_root);
 out:
        return ret;
 }
-subsys_initcall(sysctl_init);
+subsys_initcall(net_sysctl_init);
 
 struct ctl_table_header *register_net_sysctl_table(struct net *net,
        const struct ctl_path *path, struct ctl_table *table)
 {
-       struct nsproxy namespaces;
-       namespaces = *current->nsproxy;
-       namespaces.net_ns = net;
-       return __register_sysctl_paths(&net_sysctl_root,
-                                       &namespaces, path, table);
+       return __register_sysctl_paths(&net->sysctls, path, table);
 }
 EXPORT_SYMBOL_GPL(register_net_sysctl_table);
 
 struct ctl_table_header *register_net_sysctl_rotable(const
                struct ctl_path *path, struct ctl_table *table)
 {
-       return __register_sysctl_paths(&net_sysctl_ro_root,
-                       &init_nsproxy, path, table);
+       return __register_sysctl_paths(&net_sysctl_ro_root.default_set,
+                                       path, table);
 }
 EXPORT_SYMBOL_GPL(register_net_sysctl_rotable);