PM / Runtime: Ensure timer_expires is nonzero in pm_schedule_suspend()
authorRafael J. Wysocki <rjw@sisk.pl>
Thu, 3 Dec 2009 20:03:57 +0000 (21:03 +0100)
committerRafael J. Wysocki <rjw@sisk.pl>
Sun, 6 Dec 2009 15:17:56 +0000 (16:17 +0100)
commit0ddf0ed1d47e2d4170fa2989273886a1df66a862
tree179d0f0de4ef726209c068ea9616f5ccd6a73173
parent63c94801701abfea21570d3302687ec027ed33e8
PM / Runtime: Ensure timer_expires is nonzero in pm_schedule_suspend()

The runtime PM core code assumes that dev->power.timer_expires is
nonzero when the timer is scheduled, but it may become zero
incidentally in pm_schedule_suspend().  Prevent this from happening
by bumping dev->power.timer_expires up to 1 if it's 0 before calling
mod_timer().

Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
Reported-by: Alan Stern <stern@rowland.harvard.edu>
drivers/base/power/runtime.c