diff options
author | 2010-08-20 13:53:08 +0200 | |
---|---|---|
committer | 2010-08-20 13:53:08 +0200 | |
commit | e981b060767b3c4ac9393ad8d2558d648e35dfcb (patch) | |
tree | 9c05eaec3072be3645dda61d35085d152b9d5954 /arch/x86/kernel/cpu/vmware.c | |
parent | fixes for using make 3.82 (diff) | |
parent | Linux 2.6.36-rc1 (diff) | |
download | wireguard-linux-e981b060767b3c4ac9393ad8d2558d648e35dfcb.tar.xz wireguard-linux-e981b060767b3c4ac9393ad8d2558d648e35dfcb.zip |
Merge commit 'v2.6.36-rc1' into kbuild/rc-fixes
Diffstat (limited to 'arch/x86/kernel/cpu/vmware.c')
-rw-r--r-- | arch/x86/kernel/cpu/vmware.c | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/arch/x86/kernel/cpu/vmware.c b/arch/x86/kernel/cpu/vmware.c index b9d1ff588445..227b0448960d 100644 --- a/arch/x86/kernel/cpu/vmware.c +++ b/arch/x86/kernel/cpu/vmware.c @@ -51,7 +51,7 @@ static inline int __vmware_platform(void) static unsigned long vmware_get_tsc_khz(void) { - uint64_t tsc_hz; + uint64_t tsc_hz, lpj; uint32_t eax, ebx, ecx, edx; VMWARE_PORT(GETHZ, eax, ebx, ecx, edx); @@ -62,6 +62,13 @@ static unsigned long vmware_get_tsc_khz(void) printk(KERN_INFO "TSC freq read from hypervisor : %lu.%03lu MHz\n", (unsigned long) tsc_hz / 1000, (unsigned long) tsc_hz % 1000); + + if (!preset_lpj) { + lpj = ((u64)tsc_hz * 1000); + do_div(lpj, HZ); + preset_lpj = lpj; + } + return tsc_hz; } |