[PATCH v6 5/9] watchdog: Simplify update_worker
From: Guenter Roeck
Date: Sun Nov 29 2015 - 14:29:48 EST
Drop 'cancel' parameter; simply cancel worker unconditionally
if not needed.
Signed-off-by: Guenter Roeck <linux@xxxxxxxxxxxx>
---
v6: Rebased to v4.4-rc2
v5: Introduced patch
---
drivers/watchdog/watchdog_dev.c | 15 +++++++--------
1 file changed, 7 insertions(+), 8 deletions(-)
diff --git a/drivers/watchdog/watchdog_dev.c b/drivers/watchdog/watchdog_dev.c
index 82706d43e0c8..be65b388e277 100644
--- a/drivers/watchdog/watchdog_dev.c
+++ b/drivers/watchdog/watchdog_dev.c
@@ -96,15 +96,14 @@ static long watchdog_next_keepalive(struct watchdog_device *wdd)
return min_t(long, last_heartbeat - jiffies, keepalive_interval);
}
-static inline void watchdog_update_worker(struct watchdog_device *wdd,
- bool cancel)
+static inline void watchdog_update_worker(struct watchdog_device *wdd)
{
if (watchdog_need_worker(wdd)) {
long t = watchdog_next_keepalive(wdd);
if (t > 0)
mod_delayed_work(watchdog_wq, &wdd->work, t);
- } else if (cancel) {
+ } else {
cancel_delayed_work(&wdd->work);
}
}
@@ -133,7 +132,7 @@ static int _watchdog_ping(struct watchdog_device *wdd)
else
err = wdd->ops->start(wdd); /* restart watchdog */
- watchdog_update_worker(wdd, false);
+ watchdog_update_worker(wdd);
return err;
}
@@ -200,7 +199,7 @@ static int watchdog_start(struct watchdog_device *wdd)
if (err == 0) {
set_bit(WDOG_ACTIVE, &wdd->status);
wdd->last_keepalive = started_at;
- watchdog_update_worker(wdd, true);
+ watchdog_update_worker(wdd);
}
out_start:
@@ -245,7 +244,7 @@ static int watchdog_stop(struct watchdog_device *wdd)
if (err == 0) {
clear_bit(WDOG_ACTIVE, &wdd->status);
- watchdog_update_worker(wdd, true);
+ watchdog_update_worker(wdd);
}
out_stop:
@@ -313,7 +312,7 @@ static int watchdog_set_timeout(struct watchdog_device *wdd,
else
wdd->timeout = timeout;
- watchdog_update_worker(wdd, true);
+ watchdog_update_worker(wdd);
out_timeout:
mutex_unlock(&wdd->lock);
@@ -592,7 +591,7 @@ static int watchdog_release(struct inode *inode, struct file *file)
}
cancel_delayed_work_sync(&wdd->work);
- watchdog_update_worker(wdd, false);
+ watchdog_update_worker(wdd);
/*
* Allow the owner module to be unloaded again unless the watchdog
--
2.1.4
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/