Please use "KVM: VMX:" for the scope. On Tue, Jan 14, 2025, Valentin Schneider wrote: > Later commits will cause objtool to warn about static keys being used in > .noinstr sections in order to safely defer instruction patching IPIs > targeted at NOHZ_FULL CPUs. > > These keys are used in .noinstr code, and can be modified at runtime > (/proc/kernel/vmx* write). However it is not expected that they will be > flipped during latency-sensitive operations, and thus shouldn't be a source > of interference wrt the text patching IPI. This misses KVM's static key that's buried behind CONFIG_HYPERV=m|y. vmlinux.o: warning: objtool: vmx_vcpu_enter_exit+0x241: __kvm_is_using_evmcs: non-RO static key usage in noinstr vmlinux.o: warning: objtool: vmx_update_host_rsp+0x13: __kvm_is_using_evmcs: non-RO static key usage in noinstr Side topic, it's super annoying that "objtool --noinstr" only runs on vmlinux.o. I realize objtool doesn't have the visilibity to validate cross-object calls, but couldn't objtool validates calls and static key/branch usage so long as the target or key/branch is defined in the same object?