Messages in this thread | | | Date | Tue, 29 Sep 2015 07:39:55 +0100 | From | Aaron Tomlin <> | Subject | Re: [PATCH 1/5] watchdog: fix error handling in proc_watchdog_thresh() |
| |
On Mon 2015-09-28 22:44 +0200, Ulrich Obergfell wrote: > Restore the previous value of watchdog_thresh _and_ sample_period > if proc_watchdog_update() returns an error. The variables must be > consistent to avoid false positives of the lockup detectors. > > Signed-off-by: Ulrich Obergfell <uobergfe@redhat.com> > --- > kernel/watchdog.c | 7 ++++--- > 1 file changed, 4 insertions(+), 3 deletions(-) > > diff --git a/kernel/watchdog.c b/kernel/watchdog.c > index 64ed1c3..cd9a504 100644 > --- a/kernel/watchdog.c > +++ b/kernel/watchdog.c > @@ -914,13 +914,14 @@ int proc_watchdog_thresh(struct ctl_table *table, int write, > goto out; > > /* > - * Update the sample period. > - * Restore 'watchdog_thresh' on failure. > + * Update the sample period. Restore on failure. > */ > set_sample_period(); > err = proc_watchdog_update(); > - if (err) > + if (err) { > watchdog_thresh = old; > + set_sample_period(); > + } > out: > mutex_unlock(&watchdog_proc_mutex); > return err;
Reviewed-by: Aaron Tomlin <atomlin@redhat.com> [unhandled content-type:application/pgp-signature] | |