From: Eric W. Biederman There are currently no users in the kernel for CTL_ANY and it only has effect on the binary interface which is practically unused. So this complicates sysctl lookups for no good reason so just remove it. Signed-off-by: Eric W. Biederman Signed-off-by: Andrew Morton --- include/linux/sysctl.h | 1 - kernel/sysctl.c | 2 +- 2 files changed, 1 insertion(+), 2 deletions(-) diff -puN include/linux/sysctl.h~sysctl-remove-support-for-ctl_any include/linux/sysctl.h --- a/include/linux/sysctl.h~sysctl-remove-support-for-ctl_any +++ a/include/linux/sysctl.h @@ -53,7 +53,6 @@ struct __sysctl_args { /* For internal pattern-matching use only: */ #ifdef __KERNEL__ -#define CTL_ANY -1 /* Matches any name */ #define CTL_NONE 0 #define CTL_UNNUMBERED CTL_NONE /* sysctl without a binary number */ #endif diff -puN kernel/sysctl.c~sysctl-remove-support-for-ctl_any kernel/sysctl.c --- a/kernel/sysctl.c~sysctl-remove-support-for-ctl_any +++ a/kernel/sysctl.c @@ -1207,7 +1207,7 @@ repeat: for ( ; table->ctl_name || table->procname; table++) { if (!table->ctl_name) continue; - if (n == table->ctl_name || table->ctl_name == CTL_ANY) { + if (n == table->ctl_name) { int error; if (table->child) { if (ctl_perm(table, 001)) _