Re: [PATCH v1 0/7] KVM: Hyper-V SynIC timers
2015-11-26 16:34 GMT+08:00 Andrey Smetanin: > > > On 11/26/2015 08:28 AM, Wanpeng Li wrote: >> >> 2015-11-25 23:20 GMT+08:00 Andrey Smetanin : >>> >>> Per Hyper-V specification (and as required by Hyper-V-aware guests), >>> SynIC provides 4 per-vCPU timers. Each timer is programmed via a pair >>> of MSRs, and signals expiration by delivering a special format message >>> to the configured SynIC message slot and triggering the corresponding >>> synthetic interrupt. >> >> >> Could you post a link for this specification? > > > Official link: > > http://download.microsoft.com/download/A/B/4/AB43A34E-BDD0-4FA6-BDEF-79EEF16E880B/Hypervisor%20Top%20Level%20Functional%20Specification%20v4.0.docx > > and there is a pdf variant(my own docx -> pdf conversion): > > https://www.dropbox.com/s/ehxictr5wgnedq7/Hypervisor%20Top%20Level%20Functional%20Specification%20v4.0.pdf?dl=0 Btw, is there performance data for such feature? Regards, Wanpeng Li -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH v1 0/7] KVM: Hyper-V SynIC timers
On 12/01/2015 01:12 PM, Wanpeng Li wrote: 2015-11-26 16:34 GMT+08:00 Andrey Smetanin: On 11/26/2015 08:28 AM, Wanpeng Li wrote: 2015-11-25 23:20 GMT+08:00 Andrey Smetanin : Per Hyper-V specification (and as required by Hyper-V-aware guests), SynIC provides 4 per-vCPU timers. Each timer is programmed via a pair of MSRs, and signals expiration by delivering a special format message to the configured SynIC message slot and triggering the corresponding synthetic interrupt. Could you post a link for this specification? Official link: http://download.microsoft.com/download/A/B/4/AB43A34E-BDD0-4FA6-BDEF-79EEF16E880B/Hypervisor%20Top%20Level%20Functional%20Specification%20v4.0.docx and there is a pdf variant(my own docx -> pdf conversion): https://www.dropbox.com/s/ehxictr5wgnedq7/Hypervisor%20Top%20Level%20Functional%20Specification%20v4.0.pdf?dl=0 Btw, is there performance data for such feature? Regards, Wanpeng Li not yet. This is a requirement for any Hyper-V device emulation to be activated by Windows. We are going to have basic infrastructure merged and run performance tests with all that stuff done. Den -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH v1 0/7] KVM: Hyper-V SynIC timers
On 11/26/2015 08:28 AM, Wanpeng Li wrote: 2015-11-25 23:20 GMT+08:00 Andrey Smetanin: Per Hyper-V specification (and as required by Hyper-V-aware guests), SynIC provides 4 per-vCPU timers. Each timer is programmed via a pair of MSRs, and signals expiration by delivering a special format message to the configured SynIC message slot and triggering the corresponding synthetic interrupt. Could you post a link for this specification? Official link: http://download.microsoft.com/download/A/B/4/AB43A34E-BDD0-4FA6-BDEF-79EEF16E880B/Hypervisor%20Top%20Level%20Functional%20Specification%20v4.0.docx and there is a pdf variant(my own docx -> pdf conversion): https://www.dropbox.com/s/ehxictr5wgnedq7/Hypervisor%20Top%20Level%20Functional%20Specification%20v4.0.pdf?dl=0 Regards, Wanpeng Li -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH v1 0/7] KVM: Hyper-V SynIC timers
2015-11-26 16:34 GMT+08:00 Andrey Smetanin: > > > On 11/26/2015 08:28 AM, Wanpeng Li wrote: >> >> 2015-11-25 23:20 GMT+08:00 Andrey Smetanin : >>> >>> Per Hyper-V specification (and as required by Hyper-V-aware guests), >>> SynIC provides 4 per-vCPU timers. Each timer is programmed via a pair >>> of MSRs, and signals expiration by delivering a special format message >>> to the configured SynIC message slot and triggering the corresponding >>> synthetic interrupt. >> >> >> Could you post a link for this specification? > > > Official link: > > http://download.microsoft.com/download/A/B/4/AB43A34E-BDD0-4FA6-BDEF-79EEF16E880B/Hypervisor%20Top%20Level%20Functional%20Specification%20v4.0.docx > > and there is a pdf variant(my own docx -> pdf conversion): > > https://www.dropbox.com/s/ehxictr5wgnedq7/Hypervisor%20Top%20Level%20Functional%20Specification%20v4.0.pdf?dl=0 Cool, thanks. Regards, Wanpeng Li -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
[PATCH v1 0/7] KVM: Hyper-V SynIC timers
Per Hyper-V specification (and as required by Hyper-V-aware guests), SynIC provides 4 per-vCPU timers. Each timer is programmed via a pair of MSRs, and signals expiration by delivering a special format message to the configured SynIC message slot and triggering the corresponding synthetic interrupt. Note: as implemented by this patch, all periodic timers are "lazy" (i.e. if the vCPU wasn't scheduled for more than the timer period the timer events are lost), regardless of the corresponding configuration MSR. If deemed necessary, the "catch up" mode (the timer period is shortened until the timer catches up) will be implemented later. The Hyper-V SynIC timers support is required to load winhv.sys inside Windows guest on which guest VMBus devices depends on. This patches depends on Hyper-V SynIC patches previosly sent. Signed-off-by: Andrey SmetaninCC: Gleb Natapov CC: Paolo Bonzini CC: "K. Y. Srinivasan" CC: Haiyang Zhang CC: Vitaly Kuznetsov CC: Roman Kagan CC: Denis V. Lunev CC: qemu-de...@nongnu.org Andrey Smetanin (7): drivers/hv: Move HV_SYNIC_STIMER_COUNT into Hyper-V UAPI x86 header drivers/hv: Move struct hv_message into UAPI Hyper-V x86 header kvm/x86: Rearrange func's declarations inside Hyper-V header kvm/x86: Added Hyper-V vcpu_to_hv_vcpu()/hv_vcpu_to_vcpu() helpers kvm/x86: Hyper-V internal helper to read MSR HV_X64_MSR_TIME_REF_COUNT kvm/x86: Hyper-V SynIC message slot pending clearing at SINT ack kvm/x86: Hyper-V SynIC timers arch/x86/include/asm/kvm_host.h| 13 ++ arch/x86/include/uapi/asm/hyperv.h | 99 ++ arch/x86/kvm/hyperv.c | 367 - arch/x86/kvm/hyperv.h | 54 -- arch/x86/kvm/x86.c | 9 + drivers/hv/hyperv_vmbus.h | 93 -- include/linux/kvm_host.h | 3 + 7 files changed, 527 insertions(+), 111 deletions(-) -- 2.4.3 -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH v1 0/7] KVM: Hyper-V SynIC timers
2015-11-25 23:20 GMT+08:00 Andrey Smetanin: > Per Hyper-V specification (and as required by Hyper-V-aware guests), > SynIC provides 4 per-vCPU timers. Each timer is programmed via a pair > of MSRs, and signals expiration by delivering a special format message > to the configured SynIC message slot and triggering the corresponding > synthetic interrupt. Could you post a link for this specification? Regards, Wanpeng Li -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html