drivers/watchdog/watchdog_dev.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-)
Every time the user echoes 0 > /dev/watchdog0, meaningless critical log
is printed.
Signed-off-by: Liu Chao <liuchao173@huawei.com>
---
drivers/watchdog/watchdog_dev.c | 9 +++++----
1 file changed, 5 insertions(+), 4 deletions(-)
diff --git a/drivers/watchdog/watchdog_dev.c b/drivers/watchdog/watchdog_dev.c
index e2bd266b1b5b..0a9d5e6f3a88 100644
--- a/drivers/watchdog/watchdog_dev.c
+++ b/drivers/watchdog/watchdog_dev.c
@@ -960,14 +960,15 @@ static int watchdog_release(struct inode *inode, struct file *file)
if (!watchdog_active(wdd))
err = 0;
else if (test_and_clear_bit(_WDOG_ALLOW_RELEASE, &wd_data->status) ||
- !(wdd->info->options & WDIOF_MAGICCLOSE))
+ !(wdd->info->options & WDIOF_MAGICCLOSE)) {
err = watchdog_stop(wdd);
+ if (err < 0)
+ pr_crit("watchdog%d: watchdog did not stop!\n", wdd->id);
+ }
/* If the watchdog was not stopped, send a keepalive ping */
- if (err < 0) {
- pr_crit("watchdog%d: watchdog did not stop!\n", wdd->id);
+ if (err < 0)
watchdog_ping(wdd);
- }
watchdog_update_worker(wdd);
--
2.23.0
On 1/26/25 00:38, Liu Chao wrote:
> Every time the user echoes 0 > /dev/watchdog0, meaningless critical log
> is printed.
>
It is not meaningless, and it will still be displayed after this change,
making the change pointless.
Guenter
> Signed-off-by: Liu Chao <liuchao173@huawei.com>
> ---
> drivers/watchdog/watchdog_dev.c | 9 +++++----
> 1 file changed, 5 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/watchdog/watchdog_dev.c b/drivers/watchdog/watchdog_dev.c
> index e2bd266b1b5b..0a9d5e6f3a88 100644
> --- a/drivers/watchdog/watchdog_dev.c
> +++ b/drivers/watchdog/watchdog_dev.c
> @@ -960,14 +960,15 @@ static int watchdog_release(struct inode *inode, struct file *file)
> if (!watchdog_active(wdd))
> err = 0;
> else if (test_and_clear_bit(_WDOG_ALLOW_RELEASE, &wd_data->status) ||
> - !(wdd->info->options & WDIOF_MAGICCLOSE))
> + !(wdd->info->options & WDIOF_MAGICCLOSE)) {
> err = watchdog_stop(wdd);
> + if (err < 0)
> + pr_crit("watchdog%d: watchdog did not stop!\n", wdd->id);
> + }
>
> /* If the watchdog was not stopped, send a keepalive ping */
> - if (err < 0) {
> - pr_crit("watchdog%d: watchdog did not stop!\n", wdd->id);
> + if (err < 0)
> watchdog_ping(wdd);
> - }
>
> watchdog_update_worker(wdd);
>
© 2016 - 2026 Red Hat, Inc.