LKML Archive on lore.kernel.org
help / color / mirror / Atom feed
* [PATCH 1/1] Watchdog: Fixed the watchdog close/stop logic - only close the watchdog if the magic character was received and the magic close is supported.
@ 2014-12-08 17:45 Robert Yang
2014-12-08 20:11 ` Guenter Roeck
2014-12-09 8:19 ` Wim Van Sebroeck
0 siblings, 2 replies; 3+ messages in thread
From: Robert Yang @ 2014-12-08 17:45 UTC (permalink / raw)
To: Wim Van Seroeck, linux-watchdog; +Cc: linux-kernel, ryang
From: ryang <ryang@hach.com>
Signed-off-by: ryang <ryang@hach.com>
---
drivers/watchdog/watchdog_dev.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/watchdog/watchdog_dev.c b/drivers/watchdog/watchdog_dev.c
index 6aaefba..73793d8 100644
--- a/drivers/watchdog/watchdog_dev.c
+++ b/drivers/watchdog/watchdog_dev.c
@@ -471,8 +471,8 @@ static int watchdog_release(struct inode *inode, struct file *file)
*/
if (!test_bit(WDOG_ACTIVE, &wdd->status))
err = 0;
- else if (test_and_clear_bit(WDOG_ALLOW_RELEASE, &wdd->status) ||
- !(wdd->info->options & WDIOF_MAGICCLOSE))
+ else if (test_and_clear_bit(WDOG_ALLOW_RELEASE, &wdd->status) &&
+ (wdd->info->options & WDIOF_MAGICCLOSE))
err = watchdog_stop(wdd);
/* If the watchdog was not stopped, send a keepalive ping */
--
1.9.1
^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [PATCH 1/1] Watchdog: Fixed the watchdog close/stop logic - only close the watchdog if the magic character was received and the magic close is supported.
2014-12-08 17:45 [PATCH 1/1] Watchdog: Fixed the watchdog close/stop logic - only close the watchdog if the magic character was received and the magic close is supported Robert Yang
@ 2014-12-08 20:11 ` Guenter Roeck
2014-12-09 8:19 ` Wim Van Sebroeck
1 sibling, 0 replies; 3+ messages in thread
From: Guenter Roeck @ 2014-12-08 20:11 UTC (permalink / raw)
To: Robert Yang; +Cc: Wim Van Seroeck, linux-watchdog, linux-kernel, ryang
On Mon, Dec 08, 2014 at 10:45:11AM -0700, Robert Yang wrote:
> From: ryang <ryang@hach.com>
>
> Signed-off-by: ryang <ryang@hach.com>
> ---
> drivers/watchdog/watchdog_dev.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/watchdog/watchdog_dev.c b/drivers/watchdog/watchdog_dev.c
> index 6aaefba..73793d8 100644
> --- a/drivers/watchdog/watchdog_dev.c
> +++ b/drivers/watchdog/watchdog_dev.c
> @@ -471,8 +471,8 @@ static int watchdog_release(struct inode *inode, struct file *file)
> */
> if (!test_bit(WDOG_ACTIVE, &wdd->status))
> err = 0;
> - else if (test_and_clear_bit(WDOG_ALLOW_RELEASE, &wdd->status) ||
> - !(wdd->info->options & WDIOF_MAGICCLOSE))
> + else if (test_and_clear_bit(WDOG_ALLOW_RELEASE, &wdd->status) &&
> + (wdd->info->options & WDIOF_MAGICCLOSE))
> err = watchdog_stop(wdd);
>
Why ?
Guenter
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH 1/1] Watchdog: Fixed the watchdog close/stop logic - only close the watchdog if the magic character was received and the magic close is supported.
2014-12-08 17:45 [PATCH 1/1] Watchdog: Fixed the watchdog close/stop logic - only close the watchdog if the magic character was received and the magic close is supported Robert Yang
2014-12-08 20:11 ` Guenter Roeck
@ 2014-12-09 8:19 ` Wim Van Sebroeck
1 sibling, 0 replies; 3+ messages in thread
From: Wim Van Sebroeck @ 2014-12-09 8:19 UTC (permalink / raw)
To: Robert Yang; +Cc: linux-watchdog, linux-kernel, ryang
Hi Ryang,
> From: ryang <ryang@hach.com>
>
> Signed-off-by: ryang <ryang@hach.com>
> ---
> drivers/watchdog/watchdog_dev.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/watchdog/watchdog_dev.c b/drivers/watchdog/watchdog_dev.c
> index 6aaefba..73793d8 100644
> --- a/drivers/watchdog/watchdog_dev.c
> +++ b/drivers/watchdog/watchdog_dev.c
> @@ -471,8 +471,8 @@ static int watchdog_release(struct inode *inode, struct file *file)
> */
> if (!test_bit(WDOG_ACTIVE, &wdd->status))
> err = 0;
> - else if (test_and_clear_bit(WDOG_ALLOW_RELEASE, &wdd->status) ||
> - !(wdd->info->options & WDIOF_MAGICCLOSE))
> + else if (test_and_clear_bit(WDOG_ALLOW_RELEASE, &wdd->status) &&
> + (wdd->info->options & WDIOF_MAGICCLOSE))
> err = watchdog_stop(wdd);
>
> /* If the watchdog was not stopped, send a keepalive ping */
> --
There is no reason for this change; you either have:
1) WDIOF_MAGICCLOSE is not supported and thus watchog may be stopped.
2) If a watchdog daemon crashes and thus closes the watchdog device (and thus it did not sent a Magic Char) then the watchdog should not be stopped but needs to reboot the system.
Kind regards,
Wim.
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2014-12-09 8:46 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-12-08 17:45 [PATCH 1/1] Watchdog: Fixed the watchdog close/stop logic - only close the watchdog if the magic character was received and the magic close is supported Robert Yang
2014-12-08 20:11 ` Guenter Roeck
2014-12-09 8:19 ` Wim Van Sebroeck
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).