On Fri, 01 Nov 2024 11:35:46 -0700, Sean Christopherson wrote: > Clean up code related to setting and getting MSR_IA32_APICBASE_BASE. > > E.g. it's absurdly difficult to tease out that kvm_set_apic_base() exists > purely to avoid an extra call to kvm_recalculate_apic_map() (which may or > may not be worth the code, but whatever). > > Simiarly, it's quite difficult to see that kvm_lapic_set_base() doesn't > do anything useful if the incoming MSR value is the same as the current > value. > > [...] Applied to kvm-x86 misc. Kai, please holler if you have any concerns with patch 9. I'm more than happy to tweak it as needed (or even drop it if necessary). I applied it quickly purely to get more soak time in -next. Thanks for all the reviews! [1/9] KVM: x86: Short-circuit all kvm_lapic_set_base() if MSR value isn't changing https://github.com/kvm-x86/linux/commit/d7d770bed98f [2/9] KVM: x86: Drop superfluous kvm_lapic_set_base() call when setting APIC state https://github.com/kvm-x86/linux/commit/8166d2557912 [3/9] KVM: x86: Get vcpu->arch.apic_base directly and drop kvm_get_apic_base() https://github.com/kvm-x86/linux/commit/d91060e342a6 [4/9] KVM: x86: Inline kvm_get_apic_mode() in lapic.h https://github.com/kvm-x86/linux/commit/adfec1f4591c [5/9] KVM: x86: Move kvm_set_apic_base() implementation to lapic.c (from x86.c) https://github.com/kvm-x86/linux/commit/c9c9acfcd573 [6/9] KVM: x86: Rename APIC base setters to better capture their relationship https://github.com/kvm-x86/linux/commit/7d1cb7cee94f [7/9] KVM: x86: Make kvm_recalculate_apic_map() local to lapic.c https://github.com/kvm-x86/linux/commit/ff6ce56e1d88 [8/9] KVM: x86: Unpack msr_data structure prior to calling kvm_apic_set_base() https://github.com/kvm-x86/linux/commit/c9155eb012b9 [9/9] KVM: x86: Short-circuit all of kvm_apic_set_base() if MSR value is unchanged https://github.com/kvm-x86/linux/commit/a75b7bb46a83 -- https://github.com/kvm-x86/linux/tree/next