>>> On 13.02.17 at 15:32, <andrew.coop...@citrix.com> wrote: > To avoid leaking host MSR state into guests, guest LSTAR, STAR and > SYSCALL_MASK state is unconditionally loaded when switching into guest > context. > > Attempting to dirty-track the state is pointless; host state is always > restoring upon exit from guest context, meaning that guest state is always > considered dirty. > > Drop struct vmx_msr_state, enum VMX_INDEX_MSR_* and msr_index[]. The guests > MSR values are stored plainly in arch_vmx_struct, in the same way as shadow_gs > and cstar are. vmx_restore_guest_msrs() and long_mode_do_msr_write() ensure > that the hardware MSR values are always up-to-date. > > Signed-off-by: Andrew Cooper <andrew.coop...@citrix.com>
Reviewed-by: Jan Beulich <jbeul...@suse.com> However, the description above made me think whether always saving/restoring these MSRs is really needed (and desirable): We don't need the host values in place unless we context switch to a PV guest, so perhaps we should rather write them in paravirt_ctxt_switch_to()? Jan _______________________________________________ Xen-devel mailing list Xen-devel@lists.xen.org https://lists.xen.org/xen-devel