For the non-hotplug case, this TSC speed should be available; instead, clear
cpu_khz_tsc when bringing down a CPU so it is recomputed at the next bringup.

Signed-off-by: Zachary Amsden <[email protected]>
---
 arch/x86/kvm/x86.c |   12 +++++-------
 1 files changed, 5 insertions(+), 7 deletions(-)

diff --git a/arch/x86/kvm/x86.c b/arch/x86/kvm/x86.c
index 38ba4a6..f1470ce 100644
--- a/arch/x86/kvm/x86.c
+++ b/arch/x86/kvm/x86.c
@@ -4721,18 +4721,16 @@ int kvm_arch_cpu_hotadd(int cpu)
 
 void kvm_arch_cpu_hotremove(int cpu)
 {
+       /*
+        * Reset TSC khz to zero so it is recomputed on bringup
+        */
+       if (!boot_cpu_has(X86_FEATURE_CONSTANT_TSC))
+               per_cpu(cpu_tsc_khz, cpu) = 0;
        kvm_x86_ops->cpu_hotremove(cpu);
 }
 
 int kvm_arch_hardware_enable(void *garbage)
 {
-       /*
-        * Notifier callback chain may not have called cpufreq code
-        * yet, thus we must reset TSC khz to zero and recompute it
-        * before entering.
-        */
-       if (!boot_cpu_has(X86_FEATURE_CONSTANT_TSC))
-               per_cpu(cpu_tsc_khz, raw_smp_processor_id()) = 0;
        return kvm_x86_ops->hardware_enable(garbage);
 }
 
-- 
1.6.4.4

--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to