Add the shared variable SYSCTL_NEG_ONE to replace the variable neg_one used in both sysctl_writes_strict and hung_task_warnings. Signed-off-by: Xiaoming Ni <nixiaoming@xxxxxxxxxx> --- fs/proc/proc_sysctl.c | 2 +- include/linux/sysctl.h | 1 + kernel/hung_task_sysctl.c | 3 +-- kernel/sysctl.c | 3 +-- 4 files changed, 4 insertions(+), 5 deletions(-) diff --git a/fs/proc/proc_sysctl.c b/fs/proc/proc_sysctl.c index b6f5d45..acae1fa 100644 --- a/fs/proc/proc_sysctl.c +++ b/fs/proc/proc_sysctl.c @@ -23,7 +23,7 @@ static const struct inode_operations proc_sys_dir_operations; /* shared constants to be used in various sysctls */ -const int sysctl_vals[] = { 0, 1, INT_MAX }; +const int sysctl_vals[] = { 0, 1, INT_MAX, -1 }; EXPORT_SYMBOL(sysctl_vals); /* Support for permanently empty directories */ diff --git a/include/linux/sysctl.h b/include/linux/sysctl.h index 02fa844..6d741d6 100644 --- a/include/linux/sysctl.h +++ b/include/linux/sysctl.h @@ -41,6 +41,7 @@ #define SYSCTL_ZERO ((void *)&sysctl_vals[0]) #define SYSCTL_ONE ((void *)&sysctl_vals[1]) #define SYSCTL_INT_MAX ((void *)&sysctl_vals[2]) +#define SYSCTL_NEG_ONE ((void *)&sysctl_vals[3]) extern const int sysctl_vals[]; diff --git a/kernel/hung_task_sysctl.c b/kernel/hung_task_sysctl.c index 5b10d4e..62a51f5 100644 --- a/kernel/hung_task_sysctl.c +++ b/kernel/hung_task_sysctl.c @@ -14,7 +14,6 @@ * and hung_task_check_interval_secs */ static unsigned long hung_task_timeout_max = (LONG_MAX / HZ); -static int neg_one = -1; static struct ctl_table hung_task_sysctls[] = { { .procname = "hung_task_panic", @@ -55,7 +54,7 @@ .maxlen = sizeof(int), .mode = 0644, .proc_handler = proc_dointvec_minmax, - .extra1 = &neg_one, + .extra1 = SYSCTL_NEG_ONE, }, {} }; diff --git a/kernel/sysctl.c b/kernel/sysctl.c index 20adae0..01fc559 100644 --- a/kernel/sysctl.c +++ b/kernel/sysctl.c @@ -124,7 +124,6 @@ static int sixty = 60; #endif -static int __maybe_unused neg_one = -1; static int __maybe_unused two = 2; static int __maybe_unused four = 4; static unsigned long zero_ul; @@ -540,7 +539,7 @@ static int sysrq_sysctl_handler(struct ctl_table *table, int write, .maxlen = sizeof(int), .mode = 0644, .proc_handler = proc_dointvec_minmax, - .extra1 = &neg_one, + .extra1 = SYSCTL_NEG_ONE, .extra2 = SYSCTL_ONE, }, #endif -- 1.8.5.6