diff options
Diffstat (limited to 'target/linux/ath79/patches-4.14/0002-watchdog-ath79-fix-maximum-timeout.patch')
-rw-r--r-- | target/linux/ath79/patches-4.14/0002-watchdog-ath79-fix-maximum-timeout.patch | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/target/linux/ath79/patches-4.14/0002-watchdog-ath79-fix-maximum-timeout.patch b/target/linux/ath79/patches-4.14/0002-watchdog-ath79-fix-maximum-timeout.patch new file mode 100644 index 0000000000..8cf4fb3c94 --- /dev/null +++ b/target/linux/ath79/patches-4.14/0002-watchdog-ath79-fix-maximum-timeout.patch @@ -0,0 +1,37 @@ +From 5f5c9858af167f842ee8df053920b98387a71af1 Mon Sep 17 00:00:00 2001 +From: John Crispin <john@phrozen.org> +Date: Mon, 5 Mar 2018 11:41:25 +0100 +Subject: [PATCH 02/27] watchdog: ath79: fix maximum timeout + +If the userland tries to set a timeout higher than the max_timeout, +then we should fallback to max_timeout. + +Signed-off-by: John Crispin <john@phrozen.org> +--- + drivers/watchdog/ath79_wdt.c | 8 ++++++-- + 1 file changed, 6 insertions(+), 2 deletions(-) + +diff --git a/drivers/watchdog/ath79_wdt.c b/drivers/watchdog/ath79_wdt.c +index e2209bf5fa8a..c2fc6c3d0092 100644 +--- a/drivers/watchdog/ath79_wdt.c ++++ b/drivers/watchdog/ath79_wdt.c +@@ -115,10 +115,14 @@ static inline void ath79_wdt_disable(void) + + static int ath79_wdt_set_timeout(int val) + { +- if (val < 1 || val > max_timeout) ++ if (val < 1) + return -EINVAL; + +- timeout = val; ++ if (val > max_timeout) ++ timeout = max_timeout; ++ else ++ timeout = val; ++ + ath79_wdt_keepalive(); + + return 0; +-- +2.11.0 + |