From: Li Shaohua <shaohua.li@intel.com>

After resume from S3, 'date' shows time run too fast.

Signed-off-by: Li Shaohua <shaohua.li@intel.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
---

 25-akpm/arch/i386/kernel/time.c |    5 +++--
 1 files changed, 3 insertions(+), 2 deletions(-)

diff -puN arch/i386/kernel/time.c~time-run-too-fast-after-s3 arch/i386/kernel/time.c
--- 25/arch/i386/kernel/time.c~time-run-too-fast-after-s3	Mon Nov 22 13:56:33 2004
+++ 25-akpm/arch/i386/kernel/time.c	Mon Nov 22 13:56:33 2004
@@ -343,12 +343,13 @@ static int timer_resume(struct sys_devic
 		hpet_reenable();
 #endif
 	sec = get_cmos_time() + clock_cmos_diff;
-	sleep_length = get_cmos_time() - sleep_start;
+	sleep_length = (get_cmos_time() - sleep_start) * HZ;
 	write_seqlock_irqsave(&xtime_lock, flags);
 	xtime.tv_sec = sec;
 	xtime.tv_nsec = 0;
 	write_sequnlock_irqrestore(&xtime_lock, flags);
-	jiffies += sleep_length * HZ;
+	jiffies += sleep_length;
+	wall_jiffies += sleep_length;
 	return 0;
 }
 
_