Messages in this thread Patch in this message | | | Date | Sat, 17 Jun 2017 12:59:33 +1000 | From | Nicholas Piggin <> | Subject | Re: [PATCH v4 4/5] watchdog: provide watchdog_reconfigure() for arch watchdogs |
| |
On Fri, 16 Jun 2017 11:24:07 -0700 Andrew Morton <akpm@linux-foundation.org> wrote:
> On Fri, 16 Jun 2017 16:57:14 +1000 Nicholas Piggin <npiggin@gmail.com> wrote: > > > After reconfiguring watchdog sysctls etc., architecture specific > > watchdogs may not get all their parameters updated. > > > > watchdog_reconfigure() can be implemented to pull the new values > > in and set the arch NMI watchdog. > > > > I'll update the title and changelog to say "watchdog_nmi_reconfigure".
Thanks.
> > --- a/kernel/watchdog.c > > +++ b/kernel/watchdog.c > > @@ -123,6 +123,11 @@ void __weak watchdog_nmi_disable(unsigned int cpu) > > { > > } > > > > +void __weak watchdog_nmi_reconfigure(void) > > +{ > > +} > > Can we please get some documentation in here describing what it's for? > How arch maintainers might use this? When and why it is called, what > it must do? etc.
Good point, how's this?
--- kernel/watchdog.c | 15 +++++++++++++++ 1 file changed, 15 insertions(+)
diff --git a/kernel/watchdog.c b/kernel/watchdog.c index 06cd965f64d2..36531025496f 100644 --- a/kernel/watchdog.c +++ b/kernel/watchdog.c @@ -114,6 +114,10 @@ int __read_mostly watchdog_suspended; /* * These functions can be overridden if an architecture implements its * own hardlockup detector. + * + * watchdog_nmi_enable/disable can be implemented to start and stop when + * softlockup watchdog threads start and stop. The arch must select the + * SOFTLOCKUP_DETECTOR Kconfig. */ int __weak watchdog_nmi_enable(unsigned int cpu) { @@ -123,6 +127,17 @@ 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_thresh + * - watchdog_cpumask + * - sysctl_hardlockup_all_cpu_backtrace + * - hardlockup_panic + * - watchdog_suspended + */ void __weak watchdog_nmi_reconfigure(void) { } -- 2.11.0
| |