From 43b99b09aee291467b16b4cb72d009e97b5faed1 Mon Sep 17 00:00:00 2001 From: Andi Kleen Date: Tue, 11 Sep 2007 14:02:09 +0200 Subject: [PATCH] --- yaml --- r: 64901 b: refs/heads/master c: 95b08679963c78ce0d675224a6efdb5169f2bf75 h: refs/heads/master i: 64899: 811110e201bf43e63b0c93f84df3dc2e2eeb6bb3 v: v3 --- [refs] | 2 +- trunk/arch/x86_64/vdso/vclock_gettime.c | 5 +++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/[refs] b/[refs] index f4f930680911..3dfd51f42ced 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 99364df764bbef327be2f8b8ffcfbb41a4a1af4d +refs/heads/master: 95b08679963c78ce0d675224a6efdb5169f2bf75 diff --git a/trunk/arch/x86_64/vdso/vclock_gettime.c b/trunk/arch/x86_64/vdso/vclock_gettime.c index 17f6a00de712..5b54cdfb2b07 100644 --- a/trunk/arch/x86_64/vdso/vclock_gettime.c +++ b/trunk/arch/x86_64/vdso/vclock_gettime.c @@ -34,10 +34,11 @@ static long vdso_fallback_gettime(long clock, struct timespec *ts) static inline long vgetns(void) { + long v; cycles_t (*vread)(void); vread = gtod->clock.vread; - return ((vread() - gtod->clock.cycle_last) * gtod->clock.mult) >> - gtod->clock.shift; + v = (vread() - gtod->clock.cycle_last) & gtod->clock.mask; + return (v * gtod->clock.mult) >> gtod->clock.shift; } static noinline int do_realtime(struct timespec *ts)