On Fri, Feb 10, 2023, Yu Zhang wrote: > On Fri, Feb 10, 2023 at 12:31:32AM +0000, Sean Christopherson wrote: > > @@ -2168,6 +2187,23 @@ static int do_get_msr(struct kvm_vcpu *vcpu, unsigned index, u64 *data) > > > > static int do_set_msr(struct kvm_vcpu *vcpu, unsigned index, u64 *data) > > { > > + u64 val; > > + > > + /* > > + * Disallow writes to immutable feature MSRs after KVM_RUN. KVM does > > + * not support modifying the guest vCPU model on the fly, e.g. changing > > + * the nVMX capabilities while L2 is running is nonsensical. Ignore > > + * writes of the same value, e.g. to allow userspace to blindly stuff > > + * all MSRs when emulating RESET. > > + */ > > + if (vcpu->arch.last_vmentry_cpu != -1 && > > Use kvm_vcpu_has_run(vcpu) here? /facepalm Yes, that was the entire point of adding the helper. Thanks!