If no user-specified TSC rate is present, we will try to set env->tsc_khz to the value returned by KVM_GET_TSC_KHZ. Signed-off-by: Haozhong Zhang <haozhong.zhang@xxxxxxxxx> --- target-i386/kvm.c | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/target-i386/kvm.c b/target-i386/kvm.c index 2a9953b..9e4d27f 100644 --- a/target-i386/kvm.c +++ b/target-i386/kvm.c @@ -832,6 +832,18 @@ int kvm_arch_init_vcpu(CPUState *cs) } } + /* + * If no user-specified TSC frequency is present, we will try to + * set env->tsc_khz to the value used by KVM. + */ + if (!env->tsc_khz) { + r = kvm_check_extension(cs->kvm_state, KVM_CAP_GET_TSC_KHZ) ? + kvm_vcpu_ioctl(cs, KVM_GET_TSC_KHZ) : -ENOTSUP; + if (r > 0) { + env->tsc_khz = r; + } + } + if (has_xsave) { env->kvm_xsave_buf = qemu_memalign(4096, sizeof(struct kvm_xsave)); } -- 2.4.8 -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html