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]
Date:	Tue, 9 Sep 2014 13:00:43 +0200
From:	Markus Pargmann <mpa@...gutronix.de>
To:	Lisovy Rostislav <lisovy@...il.com>
Cc:	linux-watchdog@...r.kernel.org, linux-kernel@...r.kernel.org,
	devicetree@...r.kernel.org, Michal Vokac <michal.vokac@...ap.cz>
Subject: Re: Watchdog start during boot

Hi,

On Tue, Sep 09, 2014 at 12:29:29PM +0200, Lisovy Rostislav wrote:
> Hello;
> If my understanding is correct, the purpose of the "watchdog subsystem"
> is to provide an unified interface from user-space to watchdog devices
> (via /dev). The issue I am trying to solve is how to start the watchdog
> during boot (it would be sufficient just not to disable it since the
> bootloader enables it) to be controlled later on with the user-space
> tool -- i.e. when the user-space will not boot properly, I would like
> the device to be rebooted.
> 
> My "quick and dirty" device-specific solution is:
> 
> diff --git a/drivers/watchdog/omap_wdt.c b/drivers/watchdog/omap_wdt.c
> index 3691b15..1e44b03f 100644
> --- a/drivers/watchdog/omap_wdt.c
> +++ b/drivers/watchdog/omap_wdt.c
> @@ -53,6 +53,10 @@ static unsigned timer_margin;
>  module_param(timer_margin, uint, 0);
>  MODULE_PARM_DESC(timer_margin, "initial watchdog timeout (in seconds)");
>  
> +static bool start_on_boot = false;
> +module_param(start_on_boot, bool, 0);
> +MODULE_PARM_DESC(start_on_boot, "Start the watchdog during boot");
> +
>  struct omap_wdt_dev {
>         void __iomem    *base;          /* physical */
>         struct device   *dev;
> @@ -269,6 +273,9 @@ static int omap_wdt_probe(struct platform_device *pdev)
>  
>         pm_runtime_put_sync(wdev->dev);
>  
> +       if (start_on_boot)
> +               omap_wdt_start(omap_wdt);
> +
>         return 0;
>  }
> 
> however I think it would be much beneficial to do this in a generic way.
> Maybe to create a device tree property, that would store some flag to
> start the watchdog during boot?

The devicetree should be a hardware description, so it may not be the
right way to pass such information.

Some time ago I proposed something similar where the first watchdog
driver that is registered can be activated by a kernel commandline
parameter. Here is some discussion about the topic:
	Mail-id 1393604183-8755-1-git-send-email-mpa@...gutronix.de
	http://www.spinics.net/lists/linux-watchdog/msg04055.html

Best regards,

Markus

-- 
Pengutronix e.K.                           |                             |
Industrial Linux Solutions                 | http://www.pengutronix.de/  |
Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0    |
Amtsgericht Hildesheim, HRA 2686           | Fax:   +49-5121-206917-5555 |

Download attachment "signature.asc" of type "application/pgp-signature" (837 bytes)

Powered by blists - more mailing lists