watchdog/sysctl: Clean up sysctl variable name space
Reflect that these variables are user interface related and remove the whitespace damage in the sysctl table while at it. Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Reviewed-by: Don Zickus <dzickus@redhat.com> Cc: Andrew Morton <akpm@linux-foundation.org> Cc: Borislav Petkov <bp@alien8.de> Cc: Chris Metcalf <cmetcalf@mellanox.com> Cc: Linus Torvalds <torvalds@linux-foundation.org> Cc: Nicholas Piggin <npiggin@gmail.com> Cc: Peter Zijlstra <peterz@infradead.org> Cc: Sebastian Siewior <bigeasy@linutronix.de> Cc: Ulrich Obergfell <uobergfe@redhat.com> Link: http://lkml.kernel.org/r/20170912194147.783210221@linutronix.de Signed-off-by: Ingo Molnar <mingo@kernel.org>
This commit is contained in:
Родитель
51d4052b01
Коммит
7feeb9cd4f
|
@ -17,8 +17,8 @@ void lockup_detector_cleanup(void);
|
|||
bool is_hardlockup(void);
|
||||
|
||||
extern int watchdog_user_enabled;
|
||||
extern int nmi_watchdog_enabled;
|
||||
extern int soft_watchdog_enabled;
|
||||
extern int nmi_watchdog_user_enabled;
|
||||
extern int soft_watchdog_user_enabled;
|
||||
extern int watchdog_thresh;
|
||||
extern unsigned long watchdog_enabled;
|
||||
|
||||
|
@ -62,12 +62,12 @@ static inline void reset_hung_task_detector(void) { }
|
|||
* 'watchdog_enabled' variable. Each lockup detector has its dedicated bit -
|
||||
* bit 0 for the hard lockup detector and bit 1 for the soft lockup detector.
|
||||
*
|
||||
* 'watchdog_user_enabled', 'nmi_watchdog_enabled' and 'soft_watchdog_enabled'
|
||||
* are variables that are only used as an 'interface' between the parameters
|
||||
* in /proc/sys/kernel and the internal state bits in 'watchdog_enabled'. The
|
||||
* 'watchdog_thresh' variable is handled differently because its value is not
|
||||
* boolean, and the lockup detectors are 'suspended' while 'watchdog_thresh'
|
||||
* is equal zero.
|
||||
* 'watchdog_user_enabled', 'nmi_watchdog_user_enabled' and
|
||||
* 'soft_watchdog_user_enabled' are variables that are only used as an
|
||||
* 'interface' between the parameters in /proc/sys/kernel and the internal
|
||||
* state bits in 'watchdog_enabled'. The 'watchdog_thresh' variable is
|
||||
* handled differently because its value is not boolean, and the lockup
|
||||
* detectors are 'suspended' while 'watchdog_thresh' is equal zero.
|
||||
*/
|
||||
#define NMI_WATCHDOG_ENABLED_BIT 0
|
||||
#define SOFT_WATCHDOG_ENABLED_BIT 1
|
||||
|
|
|
@ -889,7 +889,7 @@ static struct ctl_table kern_table[] = {
|
|||
},
|
||||
{
|
||||
.procname = "nmi_watchdog",
|
||||
.data = &nmi_watchdog_enabled,
|
||||
.data = &nmi_watchdog_user_enabled,
|
||||
.maxlen = sizeof(int),
|
||||
.mode = NMI_WATCHDOG_SYSCTL_PERM,
|
||||
.proc_handler = proc_nmi_watchdog,
|
||||
|
@ -906,7 +906,7 @@ static struct ctl_table kern_table[] = {
|
|||
#ifdef CONFIG_SOFTLOCKUP_DETECTOR
|
||||
{
|
||||
.procname = "soft_watchdog",
|
||||
.data = &soft_watchdog_enabled,
|
||||
.data = &soft_watchdog_user_enabled,
|
||||
.maxlen = sizeof(int),
|
||||
.mode = 0644,
|
||||
.proc_handler = proc_soft_watchdog,
|
||||
|
|
|
@ -31,8 +31,6 @@
|
|||
|
||||
static DEFINE_MUTEX(watchdog_mutex);
|
||||
|
||||
int __read_mostly nmi_watchdog_enabled;
|
||||
|
||||
#if defined(CONFIG_HARDLOCKUP_DETECTOR) || defined(CONFIG_HAVE_NMI_WATCHDOG)
|
||||
unsigned long __read_mostly watchdog_enabled = SOFT_WATCHDOG_ENABLED |
|
||||
NMI_WATCHDOG_ENABLED;
|
||||
|
@ -40,6 +38,17 @@ unsigned long __read_mostly watchdog_enabled = SOFT_WATCHDOG_ENABLED |
|
|||
unsigned long __read_mostly watchdog_enabled = SOFT_WATCHDOG_ENABLED;
|
||||
#endif
|
||||
|
||||
int __read_mostly nmi_watchdog_user_enabled;
|
||||
int __read_mostly soft_watchdog_user_enabled;
|
||||
int __read_mostly watchdog_user_enabled;
|
||||
int __read_mostly watchdog_thresh = 10;
|
||||
|
||||
struct cpumask watchdog_allowed_mask __read_mostly;
|
||||
static bool softlockup_threads_initialized __read_mostly;
|
||||
|
||||
struct cpumask watchdog_cpumask __read_mostly;
|
||||
unsigned long *watchdog_cpumask_bits = cpumask_bits(&watchdog_cpumask);
|
||||
|
||||
#ifdef CONFIG_HARDLOCKUP_DETECTOR
|
||||
/*
|
||||
* Should we panic when a soft-lockup or hard-lockup occurs:
|
||||
|
@ -85,12 +94,6 @@ __setup("hardlockup_all_cpu_backtrace=", hardlockup_all_cpu_backtrace_setup);
|
|||
# endif /* CONFIG_SMP */
|
||||
#endif /* CONFIG_HARDLOCKUP_DETECTOR */
|
||||
|
||||
int __read_mostly watchdog_user_enabled;
|
||||
int __read_mostly watchdog_thresh = 10;
|
||||
|
||||
struct cpumask watchdog_cpumask __read_mostly;
|
||||
unsigned long *watchdog_cpumask_bits = cpumask_bits(&watchdog_cpumask);
|
||||
|
||||
/*
|
||||
* These functions can be overridden if an architecture implements its
|
||||
* own hardlockup detector.
|
||||
|
@ -113,7 +116,7 @@ void __weak watchdog_nmi_disable(unsigned int cpu)
|
|||
* watchdog_nmi_reconfigure can be implemented to be notified after any
|
||||
* watchdog configuration change. The arch hardlockup watchdog should
|
||||
* respond to the following variables:
|
||||
* - nmi_watchdog_enabled
|
||||
* - watchdog_enabled
|
||||
* - watchdog_thresh
|
||||
* - watchdog_cpumask
|
||||
* - sysctl_hardlockup_all_cpu_backtrace
|
||||
|
@ -126,10 +129,6 @@ void __weak watchdog_nmi_reconfigure(void) { }
|
|||
/* Global variables, exported for sysctl */
|
||||
unsigned int __read_mostly softlockup_panic =
|
||||
CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE;
|
||||
int __read_mostly soft_watchdog_enabled;
|
||||
|
||||
struct cpumask watchdog_allowed_mask __read_mostly;
|
||||
static bool softlockup_threads_initialized __read_mostly;
|
||||
|
||||
static u64 __read_mostly sample_period;
|
||||
|
||||
|
@ -606,14 +605,14 @@ static void proc_watchdog_update(void)
|
|||
/*
|
||||
* common function for watchdog, nmi_watchdog and soft_watchdog parameter
|
||||
*
|
||||
* caller | table->data points to | 'which' contains the flag(s)
|
||||
* -------------------|-----------------------|-----------------------------
|
||||
* proc_watchdog | watchdog_user_enabled | NMI_WATCHDOG_ENABLED or'ed
|
||||
* | | with SOFT_WATCHDOG_ENABLED
|
||||
* -------------------|-----------------------|-----------------------------
|
||||
* proc_nmi_watchdog | nmi_watchdog_enabled | NMI_WATCHDOG_ENABLED
|
||||
* -------------------|-----------------------|-----------------------------
|
||||
* proc_soft_watchdog | soft_watchdog_enabled | SOFT_WATCHDOG_ENABLED
|
||||
* caller | table->data points to | 'which'
|
||||
* -------------------|----------------------------|--------------------------
|
||||
* proc_watchdog | watchdog_user_enabled | NMI_WATCHDOG_ENABLED |
|
||||
* | | SOFT_WATCHDOG_ENABLED
|
||||
* -------------------|----------------------------|--------------------------
|
||||
* proc_nmi_watchdog | nmi_watchdog_user_enabled | NMI_WATCHDOG_ENABLED
|
||||
* -------------------|----------------------------|--------------------------
|
||||
* proc_soft_watchdog | soft_watchdog_user_enabled | SOFT_WATCHDOG_ENABLED
|
||||
*/
|
||||
static int proc_watchdog_common(int which, struct ctl_table *table, int write,
|
||||
void __user *buffer, size_t *lenp, loff_t *ppos)
|
||||
|
|
Загрузка…
Ссылка в новой задаче