mirror of https://gitee.com/openkylin/linux.git
[PATCH] x86: fix potential jiffies overflow in timer_resume()
i386 timer_resume is updating jiffies, not jiffies_64. It looks there is a potential overflow problem. And jiffies_64 and wall_jiffies should be protected by xtime_lock. Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp> Cc: john stultz <johnstul@us.ibm.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
This commit is contained in:
parent
b05121b29e
commit
f7c09bd972
|
@ -412,9 +412,9 @@ static int timer_resume(struct sys_device *dev)
|
|||
write_seqlock_irqsave(&xtime_lock, flags);
|
||||
xtime.tv_sec = sec;
|
||||
xtime.tv_nsec = 0;
|
||||
write_sequnlock_irqrestore(&xtime_lock, flags);
|
||||
jiffies += sleep_length;
|
||||
jiffies_64 += sleep_length;
|
||||
wall_jiffies += sleep_length;
|
||||
write_sequnlock_irqrestore(&xtime_lock, flags);
|
||||
if (last_timer->resume)
|
||||
last_timer->resume();
|
||||
cur_timer = last_timer;
|
||||
|
|
Loading…
Reference in New Issue