On 23/02/18 08:36, Jan Beulich wrote:
> ... for non-existent MSRs: wrmsr_hypervisor_regs()'s comment clearly
> says that the function returns 0 for unrecognized MSRs, so
> {svm,vmx}_msr_write_intercept() should not convert this into success. We
> don't want to unconditionally fail the access though, as we can't be
> certain the list of handled MSRs is complete enough for the guest types
> we care about, so instead mirror what we do on the read paths and probe
> the MSR to decide whether to raise #GP.
>
> Signed-off-by: Jan Beulich <[email protected]>Having thought this through: At the moment, a write to any unhandled MSR is treated as silent write discard. This is terrible behaviour from the guests point of view. With this patch in place, a write to any unreadable MSR yields #GP, which is better behaviour. The only write-only MSRs I'm aware of are in the x2apic block, and MSR_PRED_CMD, all of which are explicitly handled. Therefore, Reviewed-by: Andrew Cooper <[email protected]>, as this is an improvement in behaviour, even if the result still isn't great. ~Andrew _______________________________________________ Xen-devel mailing list [email protected] https://lists.xenproject.org/mailman/listinfo/xen-devel
