[PATCH] x86_64 : Fix vgettimeofday()
authorEric Dumazet <dada1@cosmosbay.com>
Tue, 15 May 2007 08:17:58 +0000 (10:17 +0200)
committerChris Wright <chrisw@sous-sol.org>
Wed, 23 May 2007 21:32:49 +0000 (14:32 -0700)
vgettimeofday() may return some bad timeval values, (tv_usec = 1000000), because of a wrong compare.

Signed-off-by: Eric Dumazet <dada1@cosmosbay.com>
Signed-off-by: Chris Wright <chrisw@sous-sol.org>
arch/x86_64/kernel/vsyscall.c

index b43c698cf7d30c1431022e1ad38aa46ca46d5b11..fc9f0429e3ffbedfaeecadf4a8a8a61c0ddd4204 100644 (file)
@@ -132,7 +132,7 @@ static __always_inline void do_vgettimeofday(struct timeval * tv)
 
        /* convert to usecs and add to timespec: */
        tv->tv_usec += nsec_delta / NSEC_PER_USEC;
-       while (tv->tv_usec > USEC_PER_SEC) {
+       while (tv->tv_usec >= USEC_PER_SEC) {
                tv->tv_sec += 1;
                tv->tv_usec -= USEC_PER_SEC;
        }