{
        u32 host_sysenter_cs, msr_low, msr_high;
        u32 junk;
-       u64 host_pat, tsc_this, tsc_base;
+       u64 host_pat, tsc_this;
        unsigned long a;
        struct desc_ptr dt;
        int i;
                vmx->vcpu.arch.cr4_guest_owned_bits |= X86_CR4_PGE;
        vmcs_writel(CR4_GUEST_HOST_MASK, ~vmx->vcpu.arch.cr4_guest_owned_bits);
 
-       tsc_base = vmx->vcpu.kvm->arch.vm_init_tsc;
-       rdtscll(tsc_this);
-       if (tsc_this < vmx->vcpu.kvm->arch.vm_init_tsc)
-               tsc_base = tsc_this;
-
-       guest_write_tsc(0, tsc_base);
+       tsc_this = native_read_tsc();
+       guest_write_tsc(0, tsc_this);
 
        return 0;
 }
 
        /* Reserve bit 0 of irq_sources_bitmap for userspace irq source */
        set_bit(KVM_USERSPACE_IRQ_SOURCE_ID, &kvm->arch.irq_sources_bitmap);
 
-       rdtscll(kvm->arch.vm_init_tsc);
-
        return kvm;
 }