[PATCH] x86-64: vsyscall_gtod_data diet and vgettimeofday() fix
commitc8118c6c07f2edfd697aaa0b93e08c3b65a5a675
authorEric Dumazet <dada1@cosmosbay.com>
Wed, 2 May 2007 17:27:11 +0000 (2 19:27 +0200)
committerAndi Kleen <andi@basil.nowhere.org>
Wed, 2 May 2007 17:27:11 +0000 (2 19:27 +0200)
treeefba31a24e3f2c629f727d53767fb18aaab915e2
parent272a3713bb9e302e0455c894c41180a482d2c8a3
[PATCH] x86-64: vsyscall_gtod_data diet and vgettimeofday() fix

Current vsyscall_gtod_data is large (3 or 4 cache lines dirtied at timer
interrupt). We can shrink it to exactly 64 bytes (1 cache line on AMD64)

Instead of copying a whole struct clocksource, we copy only needed fields.

I deleted an unused field : offset_base

This patch fixes one oddity in vgettimeofday(): It can returns a timeval with
tv_usec = 1000000. Maybe not a bug, but why not doing the right thing ?

Signed-off-by: Eric Dumazet <dada1@cosmosbay.com>
Signed-off-by: Andi Kleen <ak@suse.de>
arch/x86_64/kernel/vsyscall.c