On Thu, Jan 30, 2020 at 06:44:09AM +0100, Paolo Bonzini wrote: > On 30/01/20 01:10, Sean Christopherson wrote: > > Set kvm_x86_ops with the vendor's ops only after ->hardware_setup() > > completes to "prevent" using kvm_x86_ops before they are ready, i.e. to > > generate a null pointer fault instead of silently consuming unconfigured > > state. > > What about even copying kvm_x86_ops by value, so that they can be > accessed with "kvm_x86_ops.callback()" and save one memory access? Oooh, I like that idea. And {svm,vmx}_x86_ops could be marked __initdata to save a few bytes and force all the runtime stuff through kvm_x86_ops.