summaryrefslogtreecommitdiffstats
path: root/drivers/watchdog
diff options
context:
space:
mode:
authorDan Carpenter <dan.carpenter@oracle.com>2015-11-06 12:56:31 +0300
committerWim Van Sebroeck <wim@iguana.be>2015-11-23 08:59:30 +0100
commit62ed853c7de7a77bdf01421fb6836269c9b1aa1f (patch)
tree3064fea9ba4badc85af7233ddbe7dfdd216969bc /drivers/watchdog
parent4c30737ce16612b0f3b840a7c9928385cbb67555 (diff)
downloadlinux-stable-62ed853c7de7a77bdf01421fb6836269c9b1aa1f.tar.gz
linux-stable-62ed853c7de7a77bdf01421fb6836269c9b1aa1f.tar.bz2
linux-stable-62ed853c7de7a77bdf01421fb6836269c9b1aa1f.zip
watchdog: w83977f_wdt: underflow in wdt_set_timeout()
"t" is controlled by the user. If "t" is a very large integer then it could lead to a negative "tmrval". We cap the upper bound of "tmrval" but, in the current code, we allow negatives. This is a bug and it causes a static checker warning. Let's make "tmrval" unsigned to avoid this problem. Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com> Reviewed-by: Guenter Roeck <linux@roeck-us.net> Signed-off-by: Wim Van Sebroeck <wim@iguana.be>
Diffstat (limited to 'drivers/watchdog')
-rw-r--r--drivers/watchdog/w83977f_wdt.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/watchdog/w83977f_wdt.c b/drivers/watchdog/w83977f_wdt.c
index 91bf55a20024..20e2bba10400 100644
--- a/drivers/watchdog/w83977f_wdt.c
+++ b/drivers/watchdog/w83977f_wdt.c
@@ -224,7 +224,7 @@ static int wdt_keepalive(void)
static int wdt_set_timeout(int t)
{
- int tmrval;
+ unsigned int tmrval;
/*
* Convert seconds to watchdog counter time units, rounding up.