KVM does not support changing the APIC's base address. Prior to commit 3743c2f02517 ("KVM: x86: inhibit APICv/AVIC on changes to APIC ID or APIC base"), it emitted a rate-limited warning about this. Now, it's just silently broken. Use vcpu_unimpl() to complain about this unsupported operation. Even a rate-limited error message is better than complete silence. Fixes: 3743c2f02517 ("KVM: x86: inhibit APICv/AVIC on changes to APIC ID or APIC base") Signed-off-by: Jim Mattson <jmattson@xxxxxxxxxx> --- Changes in v2: * Changed format specifiers from "%#llx" to "%#x" * Cast apic->base_address to unsigned int for printing arch/x86/kvm/lapic.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/arch/x86/kvm/lapic.c b/arch/x86/kvm/lapic.c index acd7d48100a1..43ac05d10b2e 100644 --- a/arch/x86/kvm/lapic.c +++ b/arch/x86/kvm/lapic.c @@ -2583,6 +2583,9 @@ void kvm_lapic_set_base(struct kvm_vcpu *vcpu, u64 value) if ((value & MSR_IA32_APICBASE_ENABLE) && apic->base_address != APIC_DEFAULT_PHYS_BASE) { + vcpu_unimpl(vcpu, "APIC base %#x is not %#x", + (unsigned int)apic->base_address, + APIC_DEFAULT_PHYS_BASE); kvm_set_apicv_inhibit(apic->vcpu->kvm, APICV_INHIBIT_REASON_APIC_BASE_MODIFIED); } -- 2.45.2.741.gdbec12cfda-goog