OSDN Git Service

ipmi: fix unsigned long underflow
authorCorey Minyard <cminyard@mvista.com>
Sun, 30 Jul 2017 02:14:55 +0000 (21:14 -0500)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 24 Nov 2017 07:33:42 +0000 (08:33 +0100)
commit55b06b0fc09b8d880ce36b7befb4dc5c17a5efb6
tree649dc93739e2dc032518397155a2d0894775f79f
parent8af777385f7a3e693f5e79fb4655aebf881156e6
ipmi: fix unsigned long underflow

commit 392a17b10ec4320d3c0e96e2a23ebaad1123b989 upstream.

When I set the timeout to a specific value such as 500ms, the timeout
event will not happen in time due to the overflow in function
check_msg_timeout:
...
ent->timeout -= timeout_period;
if (ent->timeout > 0)
return;
...

The type of timeout_period is long, but ent->timeout is unsigned long.
This patch makes the type consistent.

Reported-by: Weilong Chen <chenweilong@huawei.com>
Signed-off-by: Corey Minyard <cminyard@mvista.com>
Tested-by: Weilong Chen <chenweilong@huawei.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/char/ipmi/ipmi_msghandler.c