OSDN Git Service

KVM: VMX: make MSR bitmaps per-VCPU
authorPaolo Bonzini <pbonzini@redhat.com>
Tue, 16 Jan 2018 15:51:18 +0000 (16:51 +0100)
committerPaolo Bonzini <pbonzini@redhat.com>
Wed, 31 Jan 2018 17:40:45 +0000 (12:40 -0500)
commit904e14fb7cb96401a7dc803ca2863fd5ba32ffe6
treef2b192c2d4783bd1a882f2d4534b54f538c4333d
parentf21f165ef922c2146cc5bdc620f542953c41714b
KVM: VMX: make MSR bitmaps per-VCPU

Place the MSR bitmap in struct loaded_vmcs, and update it in place
every time the x2apic or APICv state can change.  This is rare and
the loop can handle 64 MSRs per iteration, in a similar fashion as
nested_vmx_prepare_msr_bitmap.

This prepares for choosing, on a per-VM basis, whether to intercept
the SPEC_CTRL and PRED_CMD MSRs.

Cc: stable@vger.kernel.org # prereq for Spectre mitigation
Suggested-by: Jim Mattson <jmattson@google.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
arch/x86/kvm/vmx.c