-stable review patch. If anyone has any objections, please let us know.
---------------------
From: Eric Dumazet <[email protected]>
vgettimeofday() may return some bad timeval values, (tv_usec = 1000000), because of a wrong compare.
Signed-off-by: Eric Dumazet <[email protected]>
Signed-off-by: Chris Wright <[email protected]>
---
arch/x86_64/kernel/vsyscall.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
--- linux-2.6.21.1.orig/arch/x86_64/kernel/vsyscall.c
+++ linux-2.6.21.1/arch/x86_64/kernel/vsyscall.c
@@ -132,7 +132,7 @@ static __always_inline void do_vgettimeo
/* 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;
}
--