KVM: x86: Initialize number of APIC LVT entries during APIC creation
authorSean Christopherson <seanjc@google.com>
Fri, 8 Jul 2022 22:38:51 +0000 (15:38 -0700)
committerSean Christopherson <seanjc@google.com>
Fri, 8 Jul 2022 22:55:28 +0000 (15:55 -0700)
commit03d84f96890662681feee129cf92491f49247d28
tree9a7db1b22c2c701b8ffb6ba293a09b02aa0d00dd
parent4a627b0b162b9495f3646caa6edb0e0f97d8f2de
KVM: x86: Initialize number of APIC LVT entries during APIC creation

Initialize the number of LVT entries during APIC creation, else the field
will be incorrectly left '0' if userspace never invokes KVM_X86_SETUP_MCE.

Add and use a helper to calculate the number of entries even though
MCG_CMCI_P is not set by default in vcpu->arch.mcg_cap.  Relying on that
to always be true is unnecessarily risky, and subtle/confusing as well.

Fixes: 4b903561ec49 ("KVM: x86: Add Corrected Machine Check Interrupt (CMCI) emulation to lapic.")
Reported-by: Xiaoyao Li <xiaoyao.li@intel.com>
Cc: Jue Wang <juew@google.com>
Signed-off-by: Sean Christopherson <seanjc@google.com>
arch/x86/kvm/lapic.c