Message ID | 4D8C503D.6000607@redhat.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Hello Zachary, what is the current status, are You going to post this patch to Avi? I'd like to see one (or both) in stable eventually, I think it's good candidate.. BR nik ------------------------------------- Ing. Nikola CIPRICH LinuxBox.cz, s.r.o. 28. rijna 168, 709 01 Ostrava tel.: +420 596 603 142 fax: +420 596 621 273 mobil: +420 777 093 799 www.linuxbox.cz mobil servis: +420 737 238 656 email servis: servis@linuxbox.cz ------------------------------------- -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On 04/11/2011 12:12 PM, Nikola Ciprich wrote: > Hello Zachary, > what is the current status, are You going to post this patch to Avi? > I'd like to see one (or both) in stable eventually, I think it's good candidate.. > BR > nik > I think for upstream the newer patch is the way to go, but I would like to see it get some exposure first as it did change locking I think in one place. I'm travelling right now with limited time and network access, difficult to resend that patch, but Avi, can you apply it to your tree? Thanks, Zach -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/arch/x86/kvm/x86.c b/arch/x86/kvm/x86.c index 58f517b..42618fb 100644 --- a/arch/x86/kvm/x86.c +++ b/arch/x86/kvm/x86.c @@ -2127,8 +2127,10 @@ void kvm_arch_vcpu_load(struct kvm_vcpu *vcpu, int cpu) if (check_tsc_unstable()) { kvm_x86_ops->adjust_tsc_offset(vcpu, -tsc_delta); vcpu->arch.tsc_catchup = 1; + kvm_make_request(KVM_REQ_CLOCK_UPDATE, vcpu); } - kvm_make_request(KVM_REQ_CLOCK_UPDATE, vcpu); + if (vcpu->cpu == -1) + kvm_make_request(KVM_REQ_CLOCK_UPDATE, vcpu); if (vcpu->cpu != cpu) kvm_migrate_timers(vcpu); vcpu->cpu = cpu; @@ -3534,6 +3536,8 @@ long kvm_arch_vm_ioctl(struct file *filp, struct kvm_clock_data user_ns; u64 now_ns; s64 delta; + struct kvm_vcpu *vcpu; + int i; r = -EFAULT; if (copy_from_user(&user_ns, argp, sizeof(user_ns))) @@ -3549,6 +3553,8 @@ long kvm_arch_vm_ioctl(struct file *filp, delta = user_ns.clock - now_ns; local_irq_enable(); kvm->arch.kvmclock_offset = delta; + kvm_for_each_vcpu(i, vcpu, kvm) + kvm_make_request(KVM_REQ_CLOCK_UPDATE, vcpu); break; } case KVM_GET_CLOCK: {