aboutsummaryrefslogtreecommitdiffstats
path: root/Documentation/virtual
diff options
context:
space:
mode:
authorVitaly Kuznetsov <vkuznets@redhat.com>2018-09-26 19:02:59 +0200
committerPaolo Bonzini <pbonzini@redhat.com>2018-10-17 00:29:47 +0200
commit214ff83d4473a7757fa18a64dc7efe3b0e158486 (patch)
tree1266430cc8c3a199d20d2856bc10e2e4bf7581c4 /Documentation/virtual
parentKVM: x86: hyperv: optimize kvm_hv_flush_tlb() for vp_index == vcpu_idx case (diff)
downloadlinux-dev-214ff83d4473a7757fa18a64dc7efe3b0e158486.tar.xz
linux-dev-214ff83d4473a7757fa18a64dc7efe3b0e158486.zip
KVM: x86: hyperv: implement PV IPI send hypercalls
Using hypercall for sending IPIs is faster because this allows to specify any number of vCPUs (even > 64 with sparse CPU set), the whole procedure will take only one VMEXIT. Current Hyper-V TLFS (v5.0b) claims that HvCallSendSyntheticClusterIpi hypercall can't be 'fast' (passing parameters through registers) but apparently this is not true, Windows always uses it as 'fast' so we need to support that. Signed-off-by: Vitaly Kuznetsov <vkuznets@redhat.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Diffstat (limited to 'Documentation/virtual')
-rw-r--r--Documentation/virtual/kvm/api.txt7
1 files changed, 7 insertions, 0 deletions
diff --git a/Documentation/virtual/kvm/api.txt b/Documentation/virtual/kvm/api.txt
index df98b6304769..48e5d1197295 100644
--- a/Documentation/virtual/kvm/api.txt
+++ b/Documentation/virtual/kvm/api.txt
@@ -4791,3 +4791,10 @@ CPU when the exception is taken. If this virtual SError is taken to EL1 using
AArch64, this value will be reported in the ISS field of ESR_ELx.
See KVM_CAP_VCPU_EVENTS for more details.
+8.20 KVM_CAP_HYPERV_SEND_IPI
+
+Architectures: x86
+
+This capability indicates that KVM supports paravirtualized Hyper-V IPI send
+hypercalls:
+HvCallSendSyntheticClusterIpi, HvCallSendSyntheticClusterIpiEx.