mirror of
https://github.com/followmsi/android_kernel_google_msm.git
synced 2024-11-06 23:17:41 +00:00
watchdog: xen: don't clear is_active when xen_wdt_stop() failed
xen_wdt_release() shouldn't clear is_active even when the watchdog didn't get stopped (which by itself shouldn't happen, but let's return a proper error in this case rather than adding a BUG() upon hypercall failure). Signed-off-by: Jan Beulich <jbeulich@suse.com> Signed-off-by: Wim Van Sebroeck <wim@iguana.be>
This commit is contained in:
parent
83448bf786
commit
38c484fa13
1 changed files with 5 additions and 3 deletions
|
@ -132,15 +132,17 @@ static int xen_wdt_open(struct inode *inode, struct file *file)
|
||||||
|
|
||||||
static int xen_wdt_release(struct inode *inode, struct file *file)
|
static int xen_wdt_release(struct inode *inode, struct file *file)
|
||||||
{
|
{
|
||||||
|
int err = 0;
|
||||||
|
|
||||||
if (expect_release)
|
if (expect_release)
|
||||||
xen_wdt_stop();
|
err = xen_wdt_stop();
|
||||||
else {
|
else {
|
||||||
pr_crit("unexpected close, not stopping watchdog!\n");
|
pr_crit("unexpected close, not stopping watchdog!\n");
|
||||||
xen_wdt_kick();
|
xen_wdt_kick();
|
||||||
}
|
}
|
||||||
is_active = false;
|
is_active = err;
|
||||||
expect_release = false;
|
expect_release = false;
|
||||||
return 0;
|
return err;
|
||||||
}
|
}
|
||||||
|
|
||||||
static ssize_t xen_wdt_write(struct file *file, const char __user *data,
|
static ssize_t xen_wdt_write(struct file *file, const char __user *data,
|
||||||
|
|
Loading…
Reference in a new issue