timer: Avoid reading uninitialized data

timer->expires may be uninitialized, so check timer_pending() before
touching timer->expires to pacify kmemcheck.

Signed-off-by: Pavel Roskin <proski@gnu.org>
LKML-Reference: <20090718204602.5191.360.stgit@mj.roinet.com>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
This commit is contained in:
Pavel Roskin 2009-07-18 16:46:02 -04:00 committed by Thomas Gleixner
parent 78af08d90b
commit 4841158b26

View file

@ -714,7 +714,7 @@ int mod_timer(struct timer_list *timer, unsigned long expires)
* networking code - if the timer is re-modified * networking code - if the timer is re-modified
* to be the same thing then just return: * to be the same thing then just return:
*/ */
if (timer->expires == expires && timer_pending(timer)) if (timer_pending(timer) && timer->expires == expires)
return 1; return 1;
return __mod_timer(timer, expires, false, TIMER_NOT_PINNED); return __mod_timer(timer, expires, false, TIMER_NOT_PINNED);