linux/Documentation/virtual/kvm
Roman Kagan d3457c877b kvm: x86: hyperv: make VP_INDEX managed by userspace
Hyper-V identifies vCPUs by Virtual Processor Index, which can be
queried via HV_X64_MSR_VP_INDEX msr.  It is defined by the spec as a
sequential number which can't exceed the maximum number of vCPUs per VM.
APIC ids can be sparse and thus aren't a valid replacement for VP
indices.

Current KVM uses its internal vcpu index as VP_INDEX.  However, to make
it predictable and persistent across VM migrations, the userspace has to
control the value of VP_INDEX.

This patch achieves that, by storing vp_index explicitly on vcpu, and
allowing HV_X64_MSR_VP_INDEX to be set from the host side.  For
compatibility it's initialized to KVM vcpu index.  Also a few variables
are renamed to make clear distinction betweed this Hyper-V vp_index and
KVM vcpu_id (== APIC id).  Besides, a new capability,
KVM_CAP_HYPERV_VP_INDEX, is added to allow the userspace to skip
attempting msr writes where unsupported, to avoid spamming error logs.

Signed-off-by: Roman Kagan <rkagan@virtuozzo.com>
Signed-off-by: Radim Krčmář <rkrcmar@redhat.com>
2017-07-14 16:28:18 +02:00
..
arm arm/arm64: Add hyp-stub API documentation 2017-04-09 07:49:36 -07:00
devices KVM/ARM updates for 4.13 2017-06-30 12:38:26 +02:00
00-INDEX
api.txt kvm: x86: hyperv: make VP_INDEX managed by userspace 2017-07-14 16:28:18 +02:00
cpuid.txt
halt-polling.txt
hypercalls.txt KVM: MIPS: Implement HYPCALL emulation 2017-03-28 14:53:33 +01:00
locking.txt kvm: x86: mmu: Update documentation for fast page fault mechanism 2017-01-09 14:46:12 +01:00
mmu.txt kvm: x86: mmu: allow A/D bits to be disabled in an mmu 2017-07-03 11:19:54 +02:00
msr.txt KVM: async_pf: Let guest support delivery of async_pf from guest mode 2017-07-14 14:26:16 +02:00
nested-vmx.txt
ppc-pv.txt
review-checklist.txt
s390-diag.txt
timekeeping.txt
vcpu-requests.rst KVM: Add documentation for VCPU requests 2017-06-04 16:53:00 +02:00