On 7/13/24 01:56, Sean Christopherson wrote:
Here's a massage pull request for the static_call() changes, just in case you want to go this route instead of applying patches directly after merging everything else for 6.11 (it was easy to generate this). If you want to go the patches route, I'll post 'em next week. The following changes since commit c1c8a908a5f4c372f8a8dca0501b56ffc8d260fe: Merge branch 'vmx' (2024-06-28 22:22:53 +0000) are available in the Git repository at: https://github.com/kvm-x86/linux.git tags/kvm-x86-static_calls-6.11 for you to fetch changes up to b528de209c858f61953023b405a4abbf9a9933da: KVM: x86/pmu: Add kvm_pmu_call() to simplify static calls of kvm_pmu_ops (2024-06-28 15:23:49 -0700)
Thanks, indeed there was no straggler static_call() after applying this. However, there might be a problem: static_call_cond() is equal to static_call() only if CONFIG_HAVE_STATIC_CALL_INLINE, and arch/x86 has this: select HAVE_STATIC_CALL_INLINE if HAVE_OBJTOOL select HAVE_OBJTOOL if X86_64 And indeed if I apply diff --git a/arch/x86/kvm/Kconfig b/arch/x86/kvm/Kconfig index 80e5afde69f4..d20159d4a37a 100644 --- a/arch/x86/kvm/Kconfig +++ b/arch/x86/kvm/Kconfig @@ -21,6 +21,8 @@ config KVM tristate "Kernel-based Virtual Machine (KVM) support" depends on HIGH_RES_TIMERS depends on X86_LOCAL_APIC + # KVM relies on static_call_cond() being the same as static_call() + depends on HAVE_STATIC_CALL_INLINE select KVM_COMMON select KVM_GENERIC_MMU_NOTIFIER select HAVE_KVM_IRQCHIP KVM disappears from 32-bit kernels. :) So I haven't checked but I suspect this breaks 32-bit? Paolo