lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <6331c612-70f0-5dc6-c3d1-a7a5a72e61fe@roeck-us.net>
Date:   Tue, 31 Mar 2020 09:11:44 -0700
From:   Guenter Roeck <linux@...ck-us.net>
To:     Stefan Riedmueller <s.riedmueller@...tec.de>,
        Wim Van Sebroeck <wim@...ux-watchdog.org>,
        Support Opensource <support.opensource@...semi.com>
Cc:     linux-watchdog@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH 3/3] watchdog: da9062: No need to ping manually before
 setting timeout

On 3/26/20 8:02 AM, Stefan Riedmueller wrote:
> There is actually no need to ping the watchdog before disabling it
> during timeout change. Disabling the watchdog already takes care of
> resetting the counter.
> 
> This fixes an issue during boot when the userspace watchdog handler takes
> over and the watchdog is already running. Opening the watchdog in this case
> leads to the first ping and directly after that without the required
> heartbeat delay a second ping issued by the set_timeout call. Due to the
> missing delay this resulted in a reset.
> 
> Signed-off-by: Stefan Riedmueller <s.riedmueller@...tec.de>

Makes sense to me.

Reviewed-by: Guenter Roeck <linux@...ck-us.net>

Guenter

> ---
>  drivers/watchdog/da9062_wdt.c | 5 -----
>  1 file changed, 5 deletions(-)
> 
> diff --git a/drivers/watchdog/da9062_wdt.c b/drivers/watchdog/da9062_wdt.c
> index 6d81b1276b87..c5bd075c8b14 100644
> --- a/drivers/watchdog/da9062_wdt.c
> +++ b/drivers/watchdog/da9062_wdt.c
> @@ -66,11 +66,6 @@ static int da9062_wdt_update_timeout_register(struct da9062_watchdog *wdt,
>  					      unsigned int regval)
>  {
>  	struct da9062 *chip = wdt->hw;
> -	int ret;
> -
> -	ret = da9062_reset_watchdog_timer(wdt);
> -	if (ret)
> -		return ret;
>  
>  	regmap_update_bits(chip->regmap,
>  				  DA9062AA_CONTROL_D,
> 

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ