[PATCH] sysctl: remove insert_at_head from register_sysctl
authorEric W. Biederman <ebiederm@xmission.com>
Wed, 14 Feb 2007 08:34:09 +0000 (00:34 -0800)
committerLinus Torvalds <torvalds@woody.linux-foundation.org>
Wed, 14 Feb 2007 16:09:59 +0000 (08:09 -0800)
The semantic effect of insert_at_head is that it would allow new registered
sysctl entries to override existing sysctl entries of the same name.  Which is
pain for caching and the proc interface never implemented.

I have done an audit and discovered that none of the current users of
register_sysctl care as (excpet for directories) they do not register
duplicate sysctl entries.

So this patch simply removes the support for overriding existing entries in
the sys_sysctl interface since no one uses it or cares and it makes future
enhancments harder.

Signed-off-by: Eric W. Biederman <ebiederm@xmission.com>
Acked-by: Ralf Baechle <ralf@linux-mips.org>
Acked-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Cc: Russell King <rmk@arm.linux.org.uk>
Cc: David Howells <dhowells@redhat.com>
Cc: "Luck, Tony" <tony.luck@intel.com>
Cc: Ralf Baechle <ralf@linux-mips.org>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Martin Schwidefsky <schwidefsky@de.ibm.com>
Cc: Andi Kleen <ak@muc.de>
Cc: Jens Axboe <axboe@kernel.dk>
Cc: Corey Minyard <minyard@acm.org>
Cc: Neil Brown <neilb@suse.de>
Cc: "John W. Linville" <linville@tuxdriver.com>
Cc: James Bottomley <James.Bottomley@steeleye.com>
Cc: Jan Kara <jack@ucw.cz>
Cc: Trond Myklebust <trond.myklebust@fys.uio.no>
Cc: Mark Fasheh <mark.fasheh@oracle.com>
Cc: David Chinner <dgc@sgi.com>
Cc: "David S. Miller" <davem@davemloft.net>
Cc: Patrick McHardy <kaber@trash.net>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
68 files changed:
arch/arm/kernel/isa.c
arch/frv/kernel/pm.c
arch/frv/kernel/sysctl.c
arch/ia64/kernel/crash.c
arch/ia64/kernel/perfmon.c
arch/ia64/sn/kernel/xpc_main.c
arch/mips/au1000/common/power.c
arch/mips/lasat/sysctl.c
arch/powerpc/kernel/idle.c
arch/ppc/kernel/ppc_htab.c
arch/s390/appldata/appldata_base.c
arch/s390/kernel/debug.c
arch/s390/mm/cmm.c
arch/sh64/kernel/traps.c
arch/x86_64/ia32/ia32_binfmt.c
arch/x86_64/kernel/vsyscall.c
arch/x86_64/mm/init.c
drivers/cdrom/cdrom.c
drivers/char/hpet.c
drivers/char/ipmi/ipmi_poweroff.c
drivers/char/rtc.c
drivers/macintosh/mac_hid.c
drivers/md/md.c
drivers/net/wireless/arlan-proc.c
drivers/parport/procfs.c
drivers/scsi/scsi_sysctl.c
fs/coda/sysctl.c
fs/dquot.c
fs/lockd/svc.c
fs/nfs/sysctl.c
fs/ntfs/sysctl.c
fs/ocfs2/cluster/nodemanager.c
fs/xfs/linux-2.6/xfs_sysctl.c
include/linux/sysctl.h
ipc/ipc_sysctl.c
ipc/mqueue.c
kernel/sysctl.c
kernel/utsname_sysctl.c
net/appletalk/sysctl_net_atalk.c
net/ax25/sysctl_net_ax25.c
net/bridge/br_netfilter.c
net/core/neighbour.c
net/dccp/sysctl.c
net/decnet/dn_dev.c
net/decnet/sysctl_net_decnet.c
net/ipv4/devinet.c
net/ipv4/ipvs/ip_vs_ctl.c
net/ipv4/ipvs/ip_vs_lblc.c
net/ipv4/ipvs/ip_vs_lblcr.c
net/ipv4/netfilter/ip_conntrack_proto_sctp.c
net/ipv4/netfilter/ip_conntrack_standalone.c
net/ipv4/netfilter/ip_queue.c
net/ipv6/addrconf.c
net/ipv6/netfilter/ip6_queue.c
net/ipv6/sysctl_net_ipv6.c
net/ipx/sysctl_net_ipx.c
net/irda/irsysctl.c
net/llc/sysctl_net_llc.c
net/netfilter/nf_conntrack_standalone.c
net/netfilter/nf_sysctl.c
net/netrom/sysctl_net_netrom.c
net/rose/sysctl_net_rose.c
net/rxrpc/sysctl.c
net/sctp/sysctl.c
net/sunrpc/sysctl.c
net/sunrpc/xprtsock.c
net/unix/sysctl_net_unix.c
net/x25/sysctl_net_x25.c

index 54bbd9fe255cab1a6acba22a2bef1bd2d4fbe3f8..50a30bc91872652c5d8f68ad2d013ce9afed7503 100644 (file)
@@ -70,5 +70,5 @@ register_isa_ports(unsigned int membase, unsigned int portbase, unsigned int por
        isa_membase = membase;
        isa_portbase = portbase;
        isa_portshift = portshift;
-       isa_sysctl_header = register_sysctl_table(ctl_bus, 0);
+       isa_sysctl_header = register_sysctl_table(ctl_bus);
 }
index aa503338985ff20cfc7467a08917fcb07f11dec6..c57ce3f1f2e281b2c38a7de860d390cbc08e5fd0 100644 (file)
@@ -455,7 +455,7 @@ static struct ctl_table pm_dir_table[] =
  */
 static int __init pm_init(void)
 {
-       register_sysctl_table(pm_dir_table, 0);
+       register_sysctl_table(pm_dir_table);
        return 0;
 }
 
index 577ad16cf840dc5e279ecddb3ac4dac52e31da19..3e9d7e03fb95b35cd94bf4779b667641ea8df528 100644 (file)
@@ -216,7 +216,7 @@ static struct ctl_table frv_dir_table[] =
  */
 static int __init frv_sysctl_init(void)
 {
-       register_sysctl_table(frv_dir_table, 0);
+       register_sysctl_table(frv_dir_table);
        return 0;
 }
 
index 37bb16f07fc3f2fd2b7a3ca8112f0d6a0a6af2e0..5cdd2f5fa064acbcd5ab266526545a5b4e77f3fd 100644 (file)
@@ -222,7 +222,7 @@ machine_crash_setup(void)
        if((ret = register_die_notifier(&kdump_init_notifier_nb)) != 0)
                return ret;
 #ifdef CONFIG_SYSCTL
-       register_sysctl_table(sys_table, 0);
+       register_sysctl_table(sys_table);
 #endif
        return 0;
 }
index d2f299d98977492f431e33e86a628251c404955f..2ecb20b551e19e7b526fc57021bd4d83fa1b09ea 100644 (file)
@@ -6726,7 +6726,7 @@ pfm_init(void)
        /*
         * create /proc/sys/kernel/perfmon (for debugging purposes)
         */
-       pfm_sysctl_header = register_sysctl_table(pfm_sysctl_root, 0);
+       pfm_sysctl_header = register_sysctl_table(pfm_sysctl_root);
 
        /*
         * initialize all our spinlocks
index e04f7b5f2aab966f2704c9ee8dfae307a5c36295..68355ef6f84170096b52aee5938a390143841e10 100644 (file)
@@ -1241,7 +1241,7 @@ xpc_init(void)
        snprintf(xpc_part->bus_id, BUS_ID_SIZE, "part");
        snprintf(xpc_chan->bus_id, BUS_ID_SIZE, "chan");
 
-       xpc_sysctl = register_sysctl_table(xpc_sys_dir, 0);
+       xpc_sysctl = register_sysctl_table(xpc_sys_dir);
 
        /*
         * The first few fields of each entry of xpc_partitions[] need to
index 31256b85df6d17585f954c121cb2fee6435ac816..3901e8e04755502a1af4e5cf55caa8e79beec1a9 100644 (file)
@@ -461,7 +461,7 @@ static struct ctl_table pm_dir_table[] = {
  */
 static int __init pm_init(void)
 {
-       register_sysctl_table(pm_dir_table, 0);
+       register_sysctl_table(pm_dir_table);
        return 0;
 }
 
index c04e82fb9d591fc20ff704c7c352c5795f61938c..699ab1886ceba8deeff05f626e23597a8b560ee8 100644 (file)
@@ -432,7 +432,7 @@ static int __init lasat_register_sysctl(void)
        struct ctl_table_header *lasat_table_header;
 
        lasat_table_header =
-               register_sysctl_table(lasat_root_table, 0);
+               register_sysctl_table(lasat_root_table);
 
        return 0;
 }
index 8b27bb1a5b31a2a7723b0678bca591273cb1c4c4..6e7f50967bab10af659e61c227c7974117bbd945 100644 (file)
@@ -125,7 +125,7 @@ static ctl_table powersave_nap_sysctl_root[] = {
 static int __init
 register_powersave_nap_sysctl(void)
 {
-       register_sysctl_table(powersave_nap_sysctl_root, 0);
+       register_sysctl_table(powersave_nap_sysctl_root);
 
        return 0;
 }
index 77b20ff672b8b2de6264e65df2b00ed4fc852b70..0a7e42d54eaf59dceca3eaa658b7db8986ffbe39 100644 (file)
@@ -457,7 +457,7 @@ static ctl_table htab_sysctl_root[] = {
 static int __init
 register_ppc_htab_sysctl(void)
 {
-       register_sysctl_table(htab_sysctl_root, 0);
+       register_sysctl_table(htab_sysctl_root);
 
        return 0;
 }
index 58cefcf2d2cc162e0fe58b94267c634888b95223..0c3cf4b16ae488c2949867c93bec362bb5b42b82 100644 (file)
@@ -506,7 +506,7 @@ int appldata_register_ops(struct appldata_ops *ops)
 
        ops->ctl_table[3].ctl_name = 0;
 
-       ops->sysctl_header = register_sysctl_table(ops->ctl_table,0);
+       ops->sysctl_header = register_sysctl_table(ops->ctl_table);
 
        P_INFO("%s-ops registered!\n", ops->name);
        return 0;
@@ -606,7 +606,7 @@ static int __init appldata_init(void)
        /* Register cpu hotplug notifier */
        register_hotcpu_notifier(&appldata_nb);
 
-       appldata_sysctl_header = register_sysctl_table(appldata_dir_table, 0);
+       appldata_sysctl_header = register_sysctl_table(appldata_dir_table);
 #ifdef MODULE
        appldata_dir_table[0].de->owner = THIS_MODULE;
        appldata_table[0].de->owner = THIS_MODULE;
index 1b95148dc73bb02eb220dfe2194f530c016e7344..eca3fe595ff4a9b092b6ee8f89f69309731add77 100644 (file)
@@ -1053,7 +1053,7 @@ __init debug_init(void)
 {
        int rc = 0;
 
-       s390dbf_sysctl_header = register_sysctl_table(s390dbf_dir_table, 0);
+       s390dbf_sysctl_header = register_sysctl_table(s390dbf_dir_table);
        down(&debug_lock);
        debug_debugfs_root_entry = debugfs_create_dir(DEBUG_DIR_ROOT,NULL);
        printk(KERN_INFO "debug: Initialization complete\n");
index c6d6ddeb5e33b3d872f1227944b3875ca83d5686..c5b2f4f078bc7fbd3f58ac9c6eb58ad05f3b4e82 100644 (file)
@@ -418,7 +418,7 @@ cmm_init (void)
        int rc = -ENOMEM;
 
 #ifdef CONFIG_CMM_PROC
-       cmm_sysctl_header = register_sysctl_table(cmm_dir_table, 0);
+       cmm_sysctl_header = register_sysctl_table(cmm_dir_table);
        if (!cmm_sysctl_header)
                goto out;
 #endif
index 02cca742cf033b75912a228e16e0915f1c00bac2..c346d7ef9280f3452ec54b4edacba5698e58ce96 100644 (file)
@@ -960,7 +960,7 @@ static ctl_table sh64_root[] = {
 static struct ctl_table_header *sysctl_header;
 static int __init init_sysctl(void)
 {
-       sysctl_header = register_sysctl_table(sh64_root, 0);
+       sysctl_header = register_sysctl_table(sh64_root);
        return 0;
 }
 
index 354a0a01ec2d46cf9366114f7ff332bf17bdf6e7..071100ea12512fe409361542ad7a7cf8ae5a62ad 100644 (file)
@@ -367,7 +367,7 @@ static ctl_table abi_root_table2[] = {
 
 static __init int ia32_binfmt_init(void)
 { 
-       register_sysctl_table(abi_root_table2, 0);
+       register_sysctl_table(abi_root_table2);
        return 0;
 }
 __initcall(ia32_binfmt_init);
index c0e2b48be308ae81495ef4f08ada663d408c0e7a..313dc6ad780b1734aa9e10b41030835b14b4147e 100644 (file)
@@ -301,7 +301,7 @@ static int __init vsyscall_init(void)
        BUG_ON((unsigned long) &vgetcpu != VSYSCALL_ADDR(__NR_vgetcpu));
        map_vsyscall();
 #ifdef CONFIG_SYSCTL
-       register_sysctl_table(kernel_root_table2, 0);
+       register_sysctl_table(kernel_root_table2);
 #endif
        on_each_cpu(cpu_vsyscall_init, NULL, 0, 1);
        hotcpu_notifier(cpu_vsyscall_notifier, 0);
index a5c12ea57683572079132563cbc186ce390a0706..ec31534eb104875649847948c32f816c6951d5a8 100644 (file)
@@ -734,7 +734,7 @@ static ctl_table debug_root_table2[] = {
 
 static __init int x8664_sysctl_init(void)
 { 
-       register_sysctl_table(debug_root_table2, 0);
+       register_sysctl_table(debug_root_table2);
        return 0;
 }
 __initcall(x8664_sysctl_init);
index 14f72c477accdd17f5b6233d108f857a9a51efa2..b36f44d4d1bf6c3d97e1682ff7611fb87e0044f1 100644 (file)
@@ -3553,7 +3553,7 @@ static void cdrom_sysctl_register(void)
        if (initialized == 1)
                return;
 
-       cdrom_sysctl_header = register_sysctl_table(cdrom_root_table, 0);
+       cdrom_sysctl_header = register_sysctl_table(cdrom_root_table);
 
        /* set the defaults */
        cdrom_sysctl_settings.autoclose = autoclose;
index 81be1db18c4be974aea4089440c8c6b4a35ed4dd..0be700f4e8fd7acdceaec7dd3acf0acdf63a00d3 100644 (file)
@@ -1018,7 +1018,7 @@ static int __init hpet_init(void)
        if (result < 0)
                return -ENODEV;
 
-       sysctl_header = register_sysctl_table(dev_root, 0);
+       sysctl_header = register_sysctl_table(dev_root);
 
        result = acpi_bus_register_driver(&hpet_acpi_driver);
        if (result < 0) {
index b3ae65e2ba0c7c3a37f35ca6ddf7bdbb034a975c..e02893b7b300907e8a1d18555c155c3b7283c8dc 100644 (file)
@@ -686,7 +686,7 @@ static int ipmi_poweroff_init (void)
                printk(KERN_INFO PFX "Power cycle is enabled.\n");
 
 #ifdef CONFIG_PROC_FS
-       ipmi_table_header = register_sysctl_table(ipmi_root_table, 0);
+       ipmi_table_header = register_sysctl_table(ipmi_root_table);
        if (!ipmi_table_header) {
                printk(KERN_ERR PFX "Unable to register powercycle sysctl\n");
                rv = -ENOMEM;
index 9620abb2a6dccbd40dbe1a82f9ac6512a68c964c..c7dac9b13351d2585aa6e911f7bf873cd89c0547 100644 (file)
@@ -316,7 +316,7 @@ static struct ctl_table_header *sysctl_header;
 
 static int __init init_sysctl(void)
 {
-    sysctl_header = register_sysctl_table(dev_root, 0);
+    sysctl_header = register_sysctl_table(dev_root);
     return 0;
 }
 
index 038a9102a8bec0f2132e8b6b1b3e49bf63c2148d..c1fd816e9f09d282b9ec8cd5678dcb2c84ef3f1f 100644 (file)
@@ -138,7 +138,7 @@ int __init mac_hid_init(void)
                return err;
 
 #if defined(CONFIG_SYSCTL)
-       mac_hid_sysctl_header = register_sysctl_table(mac_hid_root_dir, 0);
+       mac_hid_sysctl_header = register_sysctl_table(mac_hid_root_dir);
 #endif /* CONFIG_SYSCTL */
 
        return 0;
index ee86df8092a110f899a18ffcb04fce75b2956dbe..05febfd9f0712d0875b52dcb4f2c07cd15ff7c8f 100644 (file)
@@ -5581,7 +5581,7 @@ static int __init md_init(void)
                            md_probe, NULL, NULL);
 
        register_reboot_notifier(&md_notifier);
-       raid_table_header = register_sysctl_table(raid_root_table, 0);
+       raid_table_header = register_sysctl_table(raid_root_table);
 
        md_geninit();
        return (0);
index 20499a6215cce85e8de8409332f6529184d09005..015abd928ab0b156ad49562b6107810e32f774b8 100644 (file)
@@ -1244,7 +1244,7 @@ int __init init_arlan_proc(void)
                return 0;
        for (i = 0; i < MAX_ARLANS && arlan_device[i]; i++)
                arlan_table[i].ctl_name = i + 1;
-       arlan_device_sysctl_header = register_sysctl_table(arlan_root_table, 0);
+       arlan_device_sysctl_header = register_sysctl_table(arlan_root_table);
        if (!arlan_device_sysctl_header)
                return -1;
 
index 9a7f1d49dec1b7e6e4544ccbf59554a87377a48f..bdbdab9285cacfbb6839c24cbbf9f11239e5796f 100644 (file)
@@ -518,7 +518,7 @@ int parport_proc_register(struct parport *port)
        t->parport_dir[0].child = t->port_dir;
        t->dev_dir[0].child = t->parport_dir;
 
-       t->sysctl_header = register_sysctl_table(t->dev_dir, 0);
+       t->sysctl_header = register_sysctl_table(t->dev_dir);
        if (t->sysctl_header == NULL) {
                kfree(t);
                t = NULL;
@@ -574,7 +574,7 @@ int parport_device_proc_register(struct pardevice *device)
        t->device_dir[0].child = t->vars;
        t->vars[0].data = &device->timeslice;
 
-       t->sysctl_header = register_sysctl_table(t->dev_dir, 0);
+       t->sysctl_header = register_sysctl_table(t->dev_dir);
        if (t->sysctl_header == NULL) {
                kfree(t);
                t = NULL;
@@ -597,7 +597,7 @@ int parport_device_proc_unregister(struct pardevice *device)
 static int __init parport_default_proc_register(void)
 {
        parport_default_sysctl_table.sysctl_header =
-               register_sysctl_table(parport_default_sysctl_table.dev_dir, 0);
+               register_sysctl_table(parport_default_sysctl_table.dev_dir);
        return 0;
 }
 
index b16b775da7cc87ad1c5f22d0af47f984b6686258..6cfaaa2d0c819a1478f4b31a80503a24db71f652 100644 (file)
@@ -41,7 +41,7 @@ static struct ctl_table_header *scsi_table_header;
 
 int __init scsi_init_sysctl(void)
 {
-       scsi_table_header = register_sysctl_table(scsi_root_table, 0);
+       scsi_table_header = register_sysctl_table(scsi_root_table);
        if (!scsi_table_header)
                return -ENOMEM;
        return 0;
index 8e50642f57e819399eabe222d19487998a58533c..c57a1fa7cf232eb73b554acc4d95c1669f0a67ab 100644 (file)
@@ -271,7 +271,7 @@ void coda_sysctl_init(void)
 
 #ifdef CONFIG_SYSCTL
        if ( !fs_table_header )
-               fs_table_header = register_sysctl_table(fs_table, 0);
+               fs_table_header = register_sysctl_table(fs_table);
 #endif 
 }
 
index 9eb166f91489498422f5b813f1956f3a7f67a221..b16f991662c1b5d58db4dde3fc982125a015472f 100644 (file)
@@ -1841,7 +1841,7 @@ static int __init dquot_init(void)
 
        printk(KERN_NOTICE "VFS: Disk quotas %s\n", __DQUOT_VERSION__);
 
-       register_sysctl_table(sys_table, 0);
+       register_sysctl_table(sys_table);
 
        dquot_cachep = kmem_cache_create("dquot", 
                        sizeof(struct dquot), sizeof(unsigned long) * 4,
index 80fcacc1acf96f9e3cfb826979c9a75428f5687a..50cb8daba4e5c7962282bcdbe6fa55cd7558ea1d 100644 (file)
@@ -512,7 +512,7 @@ module_param(nsm_use_hostnames, bool, 0644);
 
 static int __init init_nlm(void)
 {
-       nlm_sysctl_table = register_sysctl_table(nlm_sysctl_root, 0);
+       nlm_sysctl_table = register_sysctl_table(nlm_sysctl_root);
        return nlm_sysctl_table ? 0 : -ENOMEM;
 }
 
index 3ea50ac648209dc28ad6ed1aa632f3a9f0df1ff9..fcdcafbb32939931c111d3fe75458d71f6f676ff 100644 (file)
@@ -75,7 +75,7 @@ static ctl_table nfs_cb_sysctl_root[] = {
 
 int nfs_register_sysctl(void)
 {
-       nfs_callback_sysctl_table = register_sysctl_table(nfs_cb_sysctl_root, 0);
+       nfs_callback_sysctl_table = register_sysctl_table(nfs_cb_sysctl_root);
        if (nfs_callback_sysctl_table == NULL)
                return -ENOMEM;
        return 0;
index 4757f6b7a28c98842ae1735191806bc5f0ca59f8..1f1ee4c9eacccee0ec768570a60f0ec5bcbae9bd 100644 (file)
@@ -70,7 +70,7 @@ int ntfs_sysctl(int add)
 {
        if (add) {
                BUG_ON(sysctls_root_table);
-               sysctls_root_table = register_sysctl_table(sysctls_root, 0);
+               sysctls_root_table = register_sysctl_table(sysctls_root);
                if (!sysctls_root_table)
                        return -ENOMEM;
 #ifdef CONFIG_PROC_FS
index df763c7fd08327ebf3b0c6fb747b3842d14788be..9f5ad0f01ce0d885e787003d07c4fa0907139dc0 100644 (file)
@@ -922,7 +922,7 @@ static int __init init_o2nm(void)
        o2hb_init();
        o2net_init();
 
-       ocfs2_table_header = register_sysctl_table(ocfs2_root_table, 0);
+       ocfs2_table_header = register_sysctl_table(ocfs2_root_table);
        if (!ocfs2_table_header) {
                printk(KERN_ERR "nodemanager: unable to register sysctl\n");
                ret = -ENOMEM; /* or something. */
index 5c46c35a97a5f69ceb32a39594d407a769885013..cd6eaa44aa2be069875dd56c5d1eb6847d291e8b 100644 (file)
@@ -251,7 +251,7 @@ static ctl_table xfs_root_table[] = {
 void
 xfs_sysctl_register(void)
 {
-       xfs_table_header = register_sysctl_table(xfs_root_table, 0);
+       xfs_table_header = register_sysctl_table(xfs_root_table);
 }
 
 void
index 51acdec88a61e24ce3721808987ef013a95135ec..396b8d984c5d310febe993cd27e61d7bce613c87 100644 (file)
@@ -1035,8 +1035,8 @@ struct ctl_table_header
        struct completion *unregistering;
 };
 
-struct ctl_table_header * register_sysctl_table(ctl_table * table
-                                               int insert_at_head);
+struct ctl_table_header * register_sysctl_table(ctl_table * table);
+
 void unregister_sysctl_table(struct ctl_table_header * table);
 
 #else /* __KERNEL__ */
index 2c17d83b9093577de88b332a7e8f25f10a2430c2..a88934a1b76906e71663f163cd175ab5bce8c0dd 100644 (file)
@@ -176,7 +176,7 @@ static struct ctl_table ipc_root_table[] = {
 
 static int __init ipc_sysctl_init(void)
 {
-       register_sysctl_table(ipc_root_table, 0);
+       register_sysctl_table(ipc_root_table);
        return 0;
 }
 
index 7a8ce610fda27b5cd31e6b67abb572ae6a9ef5c5..0b5ecbe5f0456c121f2af016292fb0123f4bf4cd 100644 (file)
@@ -1255,7 +1255,7 @@ static int __init init_mqueue_fs(void)
                return -ENOMEM;
 
        /* ignore failues - they are not fatal */
-       mq_sysctl_table = register_sysctl_table(mq_sysctl_root, 0);
+       mq_sysctl_table = register_sysctl_table(mq_sysctl_root);
 
        error = register_filesystem(&mqueue_fs_type);
        if (error)
index cb46d015684090afa96d5f017b95a179d72c7dac..6ccb6cc19e28bb9c91efbb9b5830fefc3000ab62 100644 (file)
@@ -1244,7 +1244,6 @@ int do_sysctl_strategy (ctl_table *table,
 /**
  * register_sysctl_table - register a sysctl hierarchy
  * @table: the top-level table structure
- * @insert_at_head: whether the entry should be inserted in front or at the end
  *
  * Register a sysctl table hierarchy. @table should be a filled in ctl_table
  * array. An entry with a ctl_name of 0 terminates the table. 
@@ -1310,8 +1309,7 @@ int do_sysctl_strategy (ctl_table *table,
  * This routine returns %NULL on a failure to register, and a pointer
  * to the table header on success.
  */
-struct ctl_table_header *register_sysctl_table(ctl_table * table, 
-                                              int insert_at_head)
+struct ctl_table_header *register_sysctl_table(ctl_table * table)
 {
        struct ctl_table_header *tmp;
        tmp = kmalloc(sizeof(struct ctl_table_header), GFP_KERNEL);
@@ -1322,10 +1320,7 @@ struct ctl_table_header *register_sysctl_table(ctl_table * table,
        tmp->used = 0;
        tmp->unregistering = NULL;
        spin_lock(&sysctl_lock);
-       if (insert_at_head)
-               list_add(&tmp->ctl_entry, &root_table_header.ctl_entry);
-       else
-               list_add_tail(&tmp->ctl_entry, &root_table_header.ctl_entry);
+       list_add_tail(&tmp->ctl_entry, &root_table_header.ctl_entry);
        spin_unlock(&sysctl_lock);
 #ifdef CONFIG_PROC_SYSCTL
        register_proc_table(table, proc_sys_root, tmp);
index 324aa1341b5f9a2a4a437081782c70b27097c83b..f22b9dbd2a9c734163d65f60b1ef67c1b5259858 100644 (file)
@@ -139,7 +139,7 @@ static struct ctl_table uts_root_table[] = {
 
 static int __init utsname_sysctl_init(void)
 {
-       register_sysctl_table(uts_root_table, 0);
+       register_sysctl_table(uts_root_table);
        return 0;
 }
 
index 4f806b6dd22746d8847a929e0a211ce2324cd682..7df1778e221a6f9ab3782789ffeb51af61ceb165 100644 (file)
@@ -73,7 +73,7 @@ static struct ctl_table_header *atalk_table_header;
 
 void atalk_register_sysctl(void)
 {
-       atalk_table_header = register_sysctl_table(atalk_root_table, 0);
+       atalk_table_header = register_sysctl_table(atalk_root_table);
 }
 
 void atalk_unregister_sysctl(void)
index afdba0466f140484220beeb17e78cc15b65f1fc8..443a8367663807c4265e002268b88e9be0acf221 100644 (file)
@@ -245,7 +245,7 @@ void ax25_register_sysctl(void)
 
        ax25_dir_table[0].child = ax25_table;
 
-       ax25_table_header = register_sysctl_table(ax25_root_table, 0);
+       ax25_table_header = register_sysctl_table(ax25_root_table);
 }
 
 void ax25_unregister_sysctl(void)
index a0744e653f0912fce9e40ce1a55706c3dd763733..7712d76f06ba8b22ba394d57d7e0d007034fe383 100644 (file)
@@ -957,7 +957,7 @@ int __init br_netfilter_init(void)
        if (ret < 0)
                return ret;
 #ifdef CONFIG_SYSCTL
-       brnf_sysctl_header = register_sysctl_table(brnf_net_table, 0);
+       brnf_sysctl_header = register_sysctl_table(brnf_net_table);
        if (brnf_sysctl_header == NULL) {
                printk(KERN_WARNING
                       "br_netfilter: can't register to sysctl.\n");
index a1525fb7a81e54560e97ca8e8da74aad15003123..3183142c6044000b93829b4e340a3675a0c7d146 100644 (file)
@@ -2707,7 +2707,7 @@ int neigh_sysctl_register(struct net_device *dev, struct neigh_parms *p,
        t->neigh_proto_dir[0].child    = t->neigh_neigh_dir;
        t->neigh_root_dir[0].child     = t->neigh_proto_dir;
 
-       t->sysctl_header = register_sysctl_table(t->neigh_root_dir, 0);
+       t->sysctl_header = register_sysctl_table(t->neigh_root_dir);
        if (!t->sysctl_header) {
                err = -ENOBUFS;
                goto free_procname;
index 33916318ed6dd95a20434942ed9afd369e6fb494..1260aabac5e1b1cc17332d01649121b5068ca922 100644 (file)
@@ -127,7 +127,7 @@ static struct ctl_table_header *dccp_table_header;
 
 int __init dccp_sysctl_init(void)
 {
-       dccp_table_header = register_sysctl_table(dccp_root_table, 0);
+       dccp_table_header = register_sysctl_table(dccp_root_table);
 
        return dccp_table_header != NULL ? 0 : -ENOMEM;
 }
index 2b2c7fe45a719e96e52f1c1746e067b12a822326..0977df42c205c60ac9f885df86a817c9137beba0 100644 (file)
@@ -282,7 +282,7 @@ static void dn_dev_sysctl_register(struct net_device *dev, struct dn_dev_parms *
        t->dn_dev_root_dir[0].de = NULL;
        t->dn_dev_vars[0].extra1 = (void *)dev;
 
-       t->sysctl_header = register_sysctl_table(t->dn_dev_root_dir, 0);
+       t->sysctl_header = register_sysctl_table(t->dn_dev_root_dir);
        if (t->sysctl_header == NULL)
                kfree(t);
        else
index 70a8cf2775dfe5c04694bd5ac89351fed383d5b6..52e40d7eb22d9f583c045175ae1d64aa4dde2e16 100644 (file)
@@ -491,7 +491,7 @@ static ctl_table dn_root_table[] = {
 
 void dn_register_sysctl(void)
 {
-       dn_table_header = register_sysctl_table(dn_root_table, 0);
+       dn_table_header = register_sysctl_table(dn_root_table);
 }
 
 void dn_unregister_sysctl(void)
index 52db485a88f3b4b405f0d567ebcb7fd98b67c99c..bf3eb2dc76623af68a9b194e6466dfd7130526fe 100644 (file)
@@ -1606,7 +1606,7 @@ static void devinet_sysctl_register(struct in_device *in_dev,
        t->devinet_root_dir[0].child  = t->devinet_proto_dir;
        t->devinet_root_dir[0].de     = NULL;
 
-       t->sysctl_header = register_sysctl_table(t->devinet_root_dir, 0);
+       t->sysctl_header = register_sysctl_table(t->devinet_root_dir);
        if (!t->sysctl_header)
            goto free_procname;
 
@@ -1640,7 +1640,7 @@ void __init devinet_init(void)
        rtnetlink_links[PF_INET] = inet_rtnetlink_table;
 #ifdef CONFIG_SYSCTL
        devinet_sysctl.sysctl_header =
-               register_sysctl_table(devinet_sysctl.devinet_root_dir, 0);
+               register_sysctl_table(devinet_sysctl.devinet_root_dir);
        devinet_sysctl_register(NULL, &ipv4_devconf_dflt);
 #endif
 }
index 8b08d9cdcbc8b00891fe13ceb1b78138561e23dc..b3050a6817e7af88ed58b7213ee342b4c6f9f1bd 100644 (file)
@@ -2359,7 +2359,7 @@ int ip_vs_control_init(void)
        proc_net_fops_create("ip_vs", 0, &ip_vs_info_fops);
        proc_net_fops_create("ip_vs_stats",0, &ip_vs_stats_fops);
 
-       sysctl_header = register_sysctl_table(vs_root_table, 0);
+       sysctl_header = register_sysctl_table(vs_root_table);
 
        /* Initialize ip_vs_svc_table, ip_vs_svc_fwm_table, ip_vs_rtable */
        for(idx = 0; idx < IP_VS_SVC_TAB_SIZE; idx++)  {
index 76fd1fb91878b8a2bdd7fb4fe994963440f9eb23..c801273cb881151d65617f6c4ba6699bb26378ad 100644 (file)
@@ -583,7 +583,7 @@ static struct ip_vs_scheduler ip_vs_lblc_scheduler =
 static int __init ip_vs_lblc_init(void)
 {
        INIT_LIST_HEAD(&ip_vs_lblc_scheduler.n_list);
-       sysctl_header = register_sysctl_table(lblc_root_table, 0);
+       sysctl_header = register_sysctl_table(lblc_root_table);
        return register_ip_vs_scheduler(&ip_vs_lblc_scheduler);
 }
 
index bf1e7f272b8416c5f84bd8afde6876f1882be044..23f9b9e73c850f9a00e4d38c979023ad062f857b 100644 (file)
@@ -841,7 +841,7 @@ static struct ip_vs_scheduler ip_vs_lblcr_scheduler =
 static int __init ip_vs_lblcr_init(void)
 {
        INIT_LIST_HEAD(&ip_vs_lblcr_scheduler.n_list);
-       sysctl_header = register_sysctl_table(lblcr_root_table, 0);
+       sysctl_header = register_sysctl_table(lblcr_root_table);
 #ifdef CONFIG_IP_VS_LBLCR_DEBUG
        proc_net_create("ip_vs_lblcr", 0, ip_vs_lblcr_getinfo);
 #endif
index 2c02ff03bc4cc11c8898a787a7b13c252903be7f..e6942992b2f699634878e43e3a80c49f3f9c9e26 100644 (file)
@@ -622,7 +622,7 @@ static int __init ip_conntrack_proto_sctp_init(void)
        }
 
 #ifdef CONFIG_SYSCTL
-       ip_ct_sysctl_header = register_sysctl_table(ip_ct_net_table, 0);
+       ip_ct_sysctl_header = register_sysctl_table(ip_ct_net_table);
        if (ip_ct_sysctl_header == NULL) {
                ret = -ENOMEM;
                printk("ip_conntrack_proto_sctp: can't register to sysctl.\n");
index c7c1ec61b0f5ce25523363155716a04e26f7873d..56b2f7546d1e9a8f5270f679812d598f386bad6b 100644 (file)
@@ -848,7 +848,7 @@ static int __init ip_conntrack_standalone_init(void)
                goto cleanup_proc_stat;
        }
 #ifdef CONFIG_SYSCTL
-       ip_ct_sysctl_header = register_sysctl_table(ip_ct_net_table, 0);
+       ip_ct_sysctl_header = register_sysctl_table(ip_ct_net_table);
        if (ip_ct_sysctl_header == NULL) {
                printk("ip_conntrack: can't register to sysctl.\n");
                ret = -ENOMEM;
index 68bf19f3b01c4232875d632ec6ba50a06c1c0e03..a14798a850d7334311dad6d5170b8adcd688c356 100644 (file)
@@ -693,7 +693,7 @@ static int __init ip_queue_init(void)
        }
 
        register_netdevice_notifier(&ipq_dev_notifier);
-       ipq_sysctl_header = register_sysctl_table(ipq_root_table, 0);
+       ipq_sysctl_header = register_sysctl_table(ipq_root_table);
 
        status = nf_register_queue_handler(PF_INET, &nfqh);
        if (status < 0) {
index 4702954bf0ac3236c13144543d9a70249e5c9ac9..34d80b4aaa048364ed5db14d6583a94f897ac583 100644 (file)
@@ -4029,7 +4029,7 @@ static void addrconf_sysctl_register(struct inet6_dev *idev, struct ipv6_devconf
        t->addrconf_root_dir[0].child = t->addrconf_proto_dir;
        t->addrconf_root_dir[0].de = NULL;
 
-       t->sysctl_header = register_sysctl_table(t->addrconf_root_dir, 0);
+       t->sysctl_header = register_sysctl_table(t->addrconf_root_dir);
        if (t->sysctl_header == NULL)
                goto free_procname;
        else
@@ -4114,7 +4114,7 @@ int __init addrconf_init(void)
        rtnetlink_links[PF_INET6] = inet6_rtnetlink_table;
 #ifdef CONFIG_SYSCTL
        addrconf_sysctl.sysctl_header =
-               register_sysctl_table(addrconf_sysctl.addrconf_root_dir, 0);
+               register_sysctl_table(addrconf_sysctl.addrconf_root_dir);
        addrconf_sysctl_register(NULL, &ipv6_devconf_dflt);
 #endif
 
index 58847d3b61e503d036481309eba777081eb18c55..fdb30a5916e57b6c6cb8060640e49bf4197ed9bc 100644 (file)
@@ -683,7 +683,7 @@ static int __init ip6_queue_init(void)
        }
 
        register_netdevice_notifier(&ipq_dev_notifier);
-       ipq_sysctl_header = register_sysctl_table(ipq_root_table, 0);
+       ipq_sysctl_header = register_sysctl_table(ipq_root_table);
 
        status = nf_register_queue_handler(PF_INET6, &nfqh);
        if (status < 0) {
index 25e8e7783feefd0a3b374f7cda5d70f73de3cb92..3fb44277207be3c8b318f93a1aa8d59e42227b1a 100644 (file)
@@ -107,7 +107,7 @@ static ctl_table ipv6_root_table[] = {
 
 void ipv6_sysctl_register(void)
 {
-       ipv6_sysctl_header = register_sysctl_table(ipv6_root_table, 0);
+       ipv6_sysctl_header = register_sysctl_table(ipv6_root_table);
 }
 
 void ipv6_sysctl_unregister(void)
index 0397b0985b79de031ee45f7afa415068b2c184d9..0cf52645053648c7444a86544537a2b54a0243a1 100644 (file)
@@ -52,7 +52,7 @@ static struct ctl_table_header *ipx_table_header;
 
 void ipx_register_sysctl(void)
 {
-       ipx_table_header = register_sysctl_table(ipx_root_table, 0);
+       ipx_table_header = register_sysctl_table(ipx_root_table);
 }
 
 void ipx_unregister_sysctl(void)
index bb53ba0be585e0f75572d9d9861c6491c23d9a3c..2e968e7d8feaddb68a99ea775f5a90a91efe7973 100644 (file)
@@ -274,7 +274,7 @@ static struct ctl_table_header *irda_table_header;
  */
 int __init irda_sysctl_register(void)
 {
-       irda_table_header = register_sysctl_table(irda_root_table, 0);
+       irda_table_header = register_sysctl_table(irda_root_table);
        if (!irda_table_header)
                return -ENOMEM;
 
index bcec7e1eda95e57cb70b6715627934265b042992..46992d03601766503cc9250a25cda2b27ddccb3a 100644 (file)
@@ -116,7 +116,7 @@ static struct ctl_table_header *llc_table_header;
 
 int __init llc_sysctl_init(void)
 {
-       llc_table_header = register_sysctl_table(llc_root_table, 0);
+       llc_table_header = register_sysctl_table(llc_root_table);
 
        return llc_table_header ? 0 : -ENOMEM;
 }
index a0bba481d70d757535b1eb9c44dae181419eabb6..b8586360e519179864cda89ea24ce54d63eb884b 100644 (file)
@@ -445,7 +445,7 @@ static int __init nf_conntrack_standalone_init(void)
        proc_stat->owner = THIS_MODULE;
 #endif
 #ifdef CONFIG_SYSCTL
-       nf_ct_sysctl_header = register_sysctl_table(nf_ct_net_table, 0);
+       nf_ct_sysctl_header = register_sysctl_table(nf_ct_net_table);
        if (nf_ct_sysctl_header == NULL) {
                printk("nf_conntrack: can't register to sysctl.\n");
                ret = -ENOMEM;
index 06ddddb2911f8f9691757bf9a130907f1bebfc47..ee34589e48a4407918b06a3f2452611d38366399 100644 (file)
@@ -56,7 +56,7 @@ nf_register_sysctl_table(struct ctl_table *path, struct ctl_table *table)
        path = path_dup(path, table);
        if (path == NULL)
                return NULL;
-       header = register_sysctl_table(path, 0);
+       header = register_sysctl_table(path);
        if (header == NULL)
                path_free(path, table);
        return header;
index 6ca96a56663cf43598df678b49737b29e774d6a4..2ea68da01fb836bf8f8ae5fa4b70c13686df12e7 100644 (file)
@@ -192,7 +192,7 @@ static ctl_table nr_root_table[] = {
 
 void __init nr_register_sysctl(void)
 {
-       nr_table_header = register_sysctl_table(nr_root_table, 0);
+       nr_table_header = register_sysctl_table(nr_root_table);
 }
 
 void nr_unregister_sysctl(void)
index b9210461a8b466bbc7f07bffec4bbc4ea488c2e3..455b0555a6695518621ca558a19c77acf6410534 100644 (file)
@@ -160,7 +160,7 @@ static ctl_table rose_root_table[] = {
 
 void __init rose_register_sysctl(void)
 {
-       rose_table_header = register_sysctl_table(rose_root_table, 0);
+       rose_table_header = register_sysctl_table(rose_root_table);
 }
 
 void rose_unregister_sysctl(void)
index 0755ae028e4330073fa58af0b794ffbdbda24e38..884290754af7e905d9f3cab143cf448766e6ef66 100644 (file)
@@ -97,7 +97,7 @@ static ctl_table rxrpc_dir_sysctl_table[] = {
 int rxrpc_sysctl_init(void)
 {
 #ifdef CONFIG_SYSCTL
-       rxrpc_sysctl = register_sysctl_table(rxrpc_dir_sysctl_table, 0);
+       rxrpc_sysctl = register_sysctl_table(rxrpc_dir_sysctl_table);
        if (!rxrpc_sysctl)
                return -ENOMEM;
 #endif /* CONFIG_SYSCTL */
index 633cd178654b48da2c3acbba632ade51673bedcb..e2c679baf912ad35662837d4a6447057053218be 100644 (file)
@@ -254,7 +254,7 @@ static struct ctl_table_header * sctp_sysctl_header;
 /* Sysctl registration.  */
 void sctp_sysctl_register(void)
 {
-       sctp_sysctl_header = register_sysctl_table(sctp_root_table, 0);
+       sctp_sysctl_header = register_sysctl_table(sctp_root_table);
 }
 
 /* Sysctl deregistration.  */
index 1169798bf2716e465a38b36a6fc1effdd89965dc..738db32a287d0be1500e0f67d1ce3676f439783b 100644 (file)
@@ -36,7 +36,7 @@ void
 rpc_register_sysctl(void)
 {
        if (!sunrpc_table_header)
-               sunrpc_table_header = register_sysctl_table(sunrpc_table, 0);
+               sunrpc_table_header = register_sysctl_table(sunrpc_table);
 }
 
 void
index 5a9f6d840e82fd37794368e722ee8bc3850e157b..a5a32029e7283e9ef2bf7b834fef64e202e3330d 100644 (file)
@@ -1636,7 +1636,7 @@ int init_socket_xprt(void)
 {
 #ifdef RPC_DEBUG
        if (!sunrpc_table_header)
-               sunrpc_table_header = register_sysctl_table(sunrpc_table, 0);
+               sunrpc_table_header = register_sysctl_table(sunrpc_table);
 #endif
 
        return 0;
index 690ffa5d5bfbf5bd5e01e0bf0fa61ca263f68b10..eb0bd57ebadac12b613e0881f9b6566aa0185cc6 100644 (file)
@@ -50,7 +50,7 @@ static struct ctl_table_header * unix_sysctl_header;
 
 void unix_sysctl_register(void)
 {
-       unix_sysctl_header = register_sysctl_table(unix_root_table, 0);
+       unix_sysctl_header = register_sysctl_table(unix_root_table);
 }
 
 void unix_sysctl_unregister(void)
index 68300d4c19cc3ca72871aae3e90e3b9eaee34983..a59b77f18234d498748d8dac63f55889eb742f03 100644 (file)
@@ -106,7 +106,7 @@ static struct ctl_table x25_root_table[] = {
 
 void __init x25_register_sysctl(void)
 {
-       x25_table_header = register_sysctl_table(x25_root_table, 0);
+       x25_table_header = register_sysctl_table(x25_root_table);
 }
 
 void x25_unregister_sysctl(void)