On Tue, Feb 27, 2018 at 12:43:21PM +0000, Roger Pau Monné wrote: > On Mon, Feb 26, 2018 at 05:35:14PM +0000, Andrew Cooper wrote: > > The default case of vmx_msr_write_intercept() in particular is very tangled. > > > > First of all, fold long_mode_do_msr_{read,write}() into their callers. > > These > > functions were split out in the past because of the 32bit build of Xen, but > > it > > is unclear why the cases weren't simply #ifdef'd in place. > > > > Next, invert the vmx_write_guest_msr()/is_last_branch_msr() logic to break > > if > > the condition is satisfied, rather than nesting if it wasn't. This allows > > the > > wrmsr_hypervisor_regs() call to be un-nested with respect to the other > > default > > logic. > > > > No practical difference from a guests point of view. > > I think there's a difference from guest PoV now, guest wrmsr of > GS/FS/LSTAR/CSTAR with non-canonical addresses will get a #GP.
Forget about this, I've just realized this is completely wrong. And I've also figured out my question to CSTAR, so: Reviewed-by: Roger Pau Monné <roger....@citrix.com> _______________________________________________ Xen-devel mailing list Xen-devel@lists.xenproject.org https://lists.xenproject.org/mailman/listinfo/xen-devel