On Wed, Aug 9, 2023 at 10:56 AM Yang, Weijiang <weijiang.yang@xxxxxxxxx> wrote:Yes, will take it, thanks!
Remember that, while the ordering between KVM_SET_CPUID2 andI'm pretty sure I've advocated for the exact opposite in the past, i.e. arguedOK, will do it for this series and investigate for other MSRs.
that KVM's ABI is to not enforce ordering between KVM_SET_CPUID2 and KVM_SET_MSR.
But this is becoming untenable, juggling the dependencies in KVM is complex and
is going to result in a nasty bug at some point.
For this series, lets just tighten the rules for XSS, i.e. drop the host_initated
exemption. And in a parallel/separate series, try to do a wholesale cleanup of
all the cases that essentially allow userspace to do KVM_SET_MSR before KVM_SET_CPUID2.
Thanks!
KVM_SET_MSR must be enforced(*), the host_initiated path must allow
the default (generally 0) value.
Paolo
(*) this means that you should check guest_cpuid_has even if
host_initiated == true.