Arve Hjønnevåg noted that in the suspend/resume path, we're likely to see half-second errors from each read of the RTC. If a system is frequently suspended, these errors will accumulate quickly. Arve's solution was to compare the time delta between the system time and the RTC, for each suspend. If the difference is small, use the same delta for each suspend. This consistency avoids the error from accumulating. This patch set implements Arve's suggestion for both the RTC and persistent clock suspend paths. Initial tests show that this improves time accuracy over many repeated suspends. So while testing continues, I just wanted to send this out for review and feedback. thanks -john CC: Arve Hjønnevåg CC: Thomas Gleixner John Stultz (2): time: Avoid accumulating time drift in suspend/resume rtc: Avoid accumulating time drift in suspend/resume drivers/rtc/class.c | 65 +++++++++++++++++++++++++++++++++------------ kernel/time/timekeeping.c | 22 +++++++++++++++ 2 files changed, 70 insertions(+), 17 deletions(-) -- 1.7.3.2.146.gca209