diff options
author | Eric W. Biederman <ebiederm@xmission.com> | 2007-02-14 03:34:09 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2007-02-14 11:09:59 -0500 |
commit | 0b4d414714f0d2f922d39424b0c5c82ad900a381 (patch) | |
tree | 5079ec59a5622c9cacfe0fce484ba2c4626c406f /drivers | |
parent | ae836810263509ff7a3c2c021754ce6f66b3fab6 (diff) |
[PATCH] sysctl: remove insert_at_head from register_sysctl
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>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/cdrom/cdrom.c | 2 | ||||
-rw-r--r-- | drivers/char/hpet.c | 2 | ||||
-rw-r--r-- | drivers/char/ipmi/ipmi_poweroff.c | 2 | ||||
-rw-r--r-- | drivers/char/rtc.c | 2 | ||||
-rw-r--r-- | drivers/macintosh/mac_hid.c | 2 | ||||
-rw-r--r-- | drivers/md/md.c | 2 | ||||
-rw-r--r-- | drivers/net/wireless/arlan-proc.c | 2 | ||||
-rw-r--r-- | drivers/parport/procfs.c | 6 | ||||
-rw-r--r-- | drivers/scsi/scsi_sysctl.c | 2 |
9 files changed, 11 insertions, 11 deletions
diff --git a/drivers/cdrom/cdrom.c b/drivers/cdrom/cdrom.c index 14f72c477acc..b36f44d4d1bf 100644 --- a/drivers/cdrom/cdrom.c +++ b/drivers/cdrom/cdrom.c | |||
@@ -3553,7 +3553,7 @@ static void cdrom_sysctl_register(void) | |||
3553 | if (initialized == 1) | 3553 | if (initialized == 1) |
3554 | return; | 3554 | return; |
3555 | 3555 | ||
3556 | cdrom_sysctl_header = register_sysctl_table(cdrom_root_table, 0); | 3556 | cdrom_sysctl_header = register_sysctl_table(cdrom_root_table); |
3557 | 3557 | ||
3558 | /* set the defaults */ | 3558 | /* set the defaults */ |
3559 | cdrom_sysctl_settings.autoclose = autoclose; | 3559 | cdrom_sysctl_settings.autoclose = autoclose; |
diff --git a/drivers/char/hpet.c b/drivers/char/hpet.c index 81be1db18c4b..0be700f4e8fd 100644 --- a/drivers/char/hpet.c +++ b/drivers/char/hpet.c | |||
@@ -1018,7 +1018,7 @@ static int __init hpet_init(void) | |||
1018 | if (result < 0) | 1018 | if (result < 0) |
1019 | return -ENODEV; | 1019 | return -ENODEV; |
1020 | 1020 | ||
1021 | sysctl_header = register_sysctl_table(dev_root, 0); | 1021 | sysctl_header = register_sysctl_table(dev_root); |
1022 | 1022 | ||
1023 | result = acpi_bus_register_driver(&hpet_acpi_driver); | 1023 | result = acpi_bus_register_driver(&hpet_acpi_driver); |
1024 | if (result < 0) { | 1024 | if (result < 0) { |
diff --git a/drivers/char/ipmi/ipmi_poweroff.c b/drivers/char/ipmi/ipmi_poweroff.c index b3ae65e2ba0c..e02893b7b300 100644 --- a/drivers/char/ipmi/ipmi_poweroff.c +++ b/drivers/char/ipmi/ipmi_poweroff.c | |||
@@ -686,7 +686,7 @@ static int ipmi_poweroff_init (void) | |||
686 | printk(KERN_INFO PFX "Power cycle is enabled.\n"); | 686 | printk(KERN_INFO PFX "Power cycle is enabled.\n"); |
687 | 687 | ||
688 | #ifdef CONFIG_PROC_FS | 688 | #ifdef CONFIG_PROC_FS |
689 | ipmi_table_header = register_sysctl_table(ipmi_root_table, 0); | 689 | ipmi_table_header = register_sysctl_table(ipmi_root_table); |
690 | if (!ipmi_table_header) { | 690 | if (!ipmi_table_header) { |
691 | printk(KERN_ERR PFX "Unable to register powercycle sysctl\n"); | 691 | printk(KERN_ERR PFX "Unable to register powercycle sysctl\n"); |
692 | rv = -ENOMEM; | 692 | rv = -ENOMEM; |
diff --git a/drivers/char/rtc.c b/drivers/char/rtc.c index 9620abb2a6dc..c7dac9b13351 100644 --- a/drivers/char/rtc.c +++ b/drivers/char/rtc.c | |||
@@ -316,7 +316,7 @@ static struct ctl_table_header *sysctl_header; | |||
316 | 316 | ||
317 | static int __init init_sysctl(void) | 317 | static int __init init_sysctl(void) |
318 | { | 318 | { |
319 | sysctl_header = register_sysctl_table(dev_root, 0); | 319 | sysctl_header = register_sysctl_table(dev_root); |
320 | return 0; | 320 | return 0; |
321 | } | 321 | } |
322 | 322 | ||
diff --git a/drivers/macintosh/mac_hid.c b/drivers/macintosh/mac_hid.c index 038a9102a8be..c1fd816e9f09 100644 --- a/drivers/macintosh/mac_hid.c +++ b/drivers/macintosh/mac_hid.c | |||
@@ -138,7 +138,7 @@ int __init mac_hid_init(void) | |||
138 | return err; | 138 | return err; |
139 | 139 | ||
140 | #if defined(CONFIG_SYSCTL) | 140 | #if defined(CONFIG_SYSCTL) |
141 | mac_hid_sysctl_header = register_sysctl_table(mac_hid_root_dir, 0); | 141 | mac_hid_sysctl_header = register_sysctl_table(mac_hid_root_dir); |
142 | #endif /* CONFIG_SYSCTL */ | 142 | #endif /* CONFIG_SYSCTL */ |
143 | 143 | ||
144 | return 0; | 144 | return 0; |
diff --git a/drivers/md/md.c b/drivers/md/md.c index ee86df8092a1..05febfd9f071 100644 --- a/drivers/md/md.c +++ b/drivers/md/md.c | |||
@@ -5581,7 +5581,7 @@ static int __init md_init(void) | |||
5581 | md_probe, NULL, NULL); | 5581 | md_probe, NULL, NULL); |
5582 | 5582 | ||
5583 | register_reboot_notifier(&md_notifier); | 5583 | register_reboot_notifier(&md_notifier); |
5584 | raid_table_header = register_sysctl_table(raid_root_table, 0); | 5584 | raid_table_header = register_sysctl_table(raid_root_table); |
5585 | 5585 | ||
5586 | md_geninit(); | 5586 | md_geninit(); |
5587 | return (0); | 5587 | return (0); |
diff --git a/drivers/net/wireless/arlan-proc.c b/drivers/net/wireless/arlan-proc.c index 20499a6215cc..015abd928ab0 100644 --- a/drivers/net/wireless/arlan-proc.c +++ b/drivers/net/wireless/arlan-proc.c | |||
@@ -1244,7 +1244,7 @@ int __init init_arlan_proc(void) | |||
1244 | return 0; | 1244 | return 0; |
1245 | for (i = 0; i < MAX_ARLANS && arlan_device[i]; i++) | 1245 | for (i = 0; i < MAX_ARLANS && arlan_device[i]; i++) |
1246 | arlan_table[i].ctl_name = i + 1; | 1246 | arlan_table[i].ctl_name = i + 1; |
1247 | arlan_device_sysctl_header = register_sysctl_table(arlan_root_table, 0); | 1247 | arlan_device_sysctl_header = register_sysctl_table(arlan_root_table); |
1248 | if (!arlan_device_sysctl_header) | 1248 | if (!arlan_device_sysctl_header) |
1249 | return -1; | 1249 | return -1; |
1250 | 1250 | ||
diff --git a/drivers/parport/procfs.c b/drivers/parport/procfs.c index 9a7f1d49dec1..bdbdab9285ca 100644 --- a/drivers/parport/procfs.c +++ b/drivers/parport/procfs.c | |||
@@ -518,7 +518,7 @@ int parport_proc_register(struct parport *port) | |||
518 | t->parport_dir[0].child = t->port_dir; | 518 | t->parport_dir[0].child = t->port_dir; |
519 | t->dev_dir[0].child = t->parport_dir; | 519 | t->dev_dir[0].child = t->parport_dir; |
520 | 520 | ||
521 | t->sysctl_header = register_sysctl_table(t->dev_dir, 0); | 521 | t->sysctl_header = register_sysctl_table(t->dev_dir); |
522 | if (t->sysctl_header == NULL) { | 522 | if (t->sysctl_header == NULL) { |
523 | kfree(t); | 523 | kfree(t); |
524 | t = NULL; | 524 | t = NULL; |
@@ -574,7 +574,7 @@ int parport_device_proc_register(struct pardevice *device) | |||
574 | t->device_dir[0].child = t->vars; | 574 | t->device_dir[0].child = t->vars; |
575 | t->vars[0].data = &device->timeslice; | 575 | t->vars[0].data = &device->timeslice; |
576 | 576 | ||
577 | t->sysctl_header = register_sysctl_table(t->dev_dir, 0); | 577 | t->sysctl_header = register_sysctl_table(t->dev_dir); |
578 | if (t->sysctl_header == NULL) { | 578 | if (t->sysctl_header == NULL) { |
579 | kfree(t); | 579 | kfree(t); |
580 | t = NULL; | 580 | t = NULL; |
@@ -597,7 +597,7 @@ int parport_device_proc_unregister(struct pardevice *device) | |||
597 | static int __init parport_default_proc_register(void) | 597 | static int __init parport_default_proc_register(void) |
598 | { | 598 | { |
599 | parport_default_sysctl_table.sysctl_header = | 599 | parport_default_sysctl_table.sysctl_header = |
600 | register_sysctl_table(parport_default_sysctl_table.dev_dir, 0); | 600 | register_sysctl_table(parport_default_sysctl_table.dev_dir); |
601 | return 0; | 601 | return 0; |
602 | } | 602 | } |
603 | 603 | ||
diff --git a/drivers/scsi/scsi_sysctl.c b/drivers/scsi/scsi_sysctl.c index b16b775da7cc..6cfaaa2d0c81 100644 --- a/drivers/scsi/scsi_sysctl.c +++ b/drivers/scsi/scsi_sysctl.c | |||
@@ -41,7 +41,7 @@ static struct ctl_table_header *scsi_table_header; | |||
41 | 41 | ||
42 | int __init scsi_init_sysctl(void) | 42 | int __init scsi_init_sysctl(void) |
43 | { | 43 | { |
44 | scsi_table_header = register_sysctl_table(scsi_root_table, 0); | 44 | scsi_table_header = register_sysctl_table(scsi_root_table); |
45 | if (!scsi_table_header) | 45 | if (!scsi_table_header) |
46 | return -ENOMEM; | 46 | return -ENOMEM; |
47 | return 0; | 47 | return 0; |