path: root/drivers/watchdog
diff options
authorJerry Hoemann <jerry.hoemann@hpe.com>2018-09-21 20:50:39 (GMT)
committerWim Van Sebroeck <wim@linux-watchdog.org>2018-10-02 11:32:28 (GMT)
commit10d790d1fa2e9487053f9a3a289ff198736fa964 (patch)
tree4d68d8de485ce029133d8daf4f8c4e708984e2e9 /drivers/watchdog
parent57cbf0e3a0fd48e5ad8f3884562e8dde4827c1c8 (diff)
watchdog: hpwdt: Disable PreTimeout when Timeout is smaller
During module install, disable pretimeout if the requested timeout value is not greater than the minimal pretimeout value that is supported by hardware. This makes the module load handling of pretimeout consistent with the ioctl handling of pretimeout. Signed-off-by: Jerry Hoemann <jerry.hoemann@hpe.com> Reviewed-by: Guenter Roeck <linux@roeck-us.net> Signed-off-by: Guenter Roeck <linux@roeck-us.net> Signed-off-by: Wim Van Sebroeck <wim@linux-watchdog.org>
Diffstat (limited to 'drivers/watchdog')
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/watchdog/hpwdt.c b/drivers/watchdog/hpwdt.c
index 7af358b..9356230 100644
--- a/drivers/watchdog/hpwdt.c
+++ b/drivers/watchdog/hpwdt.c
@@ -311,6 +311,10 @@ static int hpwdt_init_one(struct pci_dev *dev,
if (watchdog_init_timeout(&hpwdt_dev, soft_margin, NULL))
dev_warn(&dev->dev, "Invalid soft_margin: %d.\n", soft_margin);
+ if (pretimeout && hpwdt_dev.timeout <= PRETIMEOUT_SEC) {
+ dev_warn(&dev->dev, "timeout <= pretimeout. Setting pretimeout to zero\n");
+ pretimeout = 0;
+ }
hpwdt_dev.pretimeout = pretimeout ? PRETIMEOUT_SEC : 0;
hpwdt_dev.parent = &dev->dev;

Privacy Policy