Commit 861dc0b4 authored by Luis Chamberlain's avatar Luis Chamberlain

sysctl: move umh sysctl registration to its own file

Move the umh sysctl registration to its own file, the array is
already there. We do this to remove the clutter out of kernel/sysctl.c
to avoid merge conflicts.

This also lets the sysctls not be built at all now when CONFIG_SYSCTL
is not enabled.

This has a small penalty of 23 bytes but soon we'll be removing
all the empty entries on sysctl arrays so just do this cleanup
now:

./scripts/bloat-o-meter vmlinux.base vmlinux.1
add/remove: 2/0 grow/shrink: 0/1 up/down: 49/-26 (23)
Function                                     old     new   delta
init_umh_sysctls                               -      33     +33
__pfx_init_umh_sysctls                         -      16     +16
sysctl_init_bases                            111      85     -26
Total: Before=21256914, After=21256937, chg +0.00%
Acked-by: default avatarJarkko Sakkinen <jarkko@kernel.org>
Signed-off-by: default avatarLuis Chamberlain <mcgrof@kernel.org>
parent 01e6aac7
...@@ -42,8 +42,6 @@ call_usermodehelper_setup(const char *path, char **argv, char **envp, ...@@ -42,8 +42,6 @@ call_usermodehelper_setup(const char *path, char **argv, char **envp,
extern int extern int
call_usermodehelper_exec(struct subprocess_info *info, int wait); call_usermodehelper_exec(struct subprocess_info *info, int wait);
extern struct ctl_table usermodehelper_table[];
enum umh_disable_depth { enum umh_disable_depth {
UMH_ENABLED = 0, UMH_ENABLED = 0,
UMH_FREEZING, UMH_FREEZING,
......
...@@ -2322,7 +2322,6 @@ static struct ctl_table vm_table[] = { ...@@ -2322,7 +2322,6 @@ static struct ctl_table vm_table[] = {
int __init sysctl_init_bases(void) int __init sysctl_init_bases(void)
{ {
register_sysctl_init("kernel", kern_table); register_sysctl_init("kernel", kern_table);
register_sysctl_init("kernel/usermodehelper", usermodehelper_table);
#ifdef CONFIG_KEYS #ifdef CONFIG_KEYS
register_sysctl_init("kernel/keys", key_sysctls); register_sysctl_init("kernel/keys", key_sysctls);
#endif #endif
......
...@@ -544,7 +544,8 @@ static int proc_cap_handler(struct ctl_table *table, int write, ...@@ -544,7 +544,8 @@ static int proc_cap_handler(struct ctl_table *table, int write,
return 0; return 0;
} }
struct ctl_table usermodehelper_table[] = { #if defined(CONFIG_SYSCTL)
static struct ctl_table usermodehelper_table[] = {
{ {
.procname = "bset", .procname = "bset",
.data = &usermodehelper_bset, .data = &usermodehelper_bset,
...@@ -561,3 +562,11 @@ struct ctl_table usermodehelper_table[] = { ...@@ -561,3 +562,11 @@ struct ctl_table usermodehelper_table[] = {
}, },
{ } { }
}; };
static int __init init_umh_sysctls(void)
{
register_sysctl_init("kernel/usermodehelper", usermodehelper_table);
return 0;
}
early_initcall(init_umh_sysctls);
#endif /* CONFIG_SYSCTL */
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment