[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH v2 10/19] x86/hvm: Reposition the modification of raw segment data from the VMCB/VMCS
On 11/28/2016 06:13 AM, Andrew Cooper wrote: > Intel VT-x and AMD SVM provide access to the full segment descriptor cache via > fields in the VMCB/VMCS. However, the bits which are actually checked by > hardware and preserved across vmentry/exit are inconsistent, and the vendor > accessor functions perform inconsistent modification to the raw values. > > Convert {svm,vmx}_{get,set}_segment_register() into raw accessors, and alter > hvm_{get,set}_segment_register() to cook the values consistently. This allows > the common emulation code to better rely on finding architecturally-expected > values. > > While moving the code performing the cooking, fix the %ss.db quirk. A NULL > selector is indicated by .p being clear, not the value of the .type field. > > This does cause some functional changes because of the modifications being > applied uniformly. A side effect of this fixes latent bugs where > vmx_set_segment_register() didn't correctly fix up .G for segments, and > inconsistent fixing up of the GDTR/IDTR limits. > > Signed-off-by: Andrew Cooper <andrew.cooper3@xxxxxxxxxx> > Reviewed-by: Kevin Tian <kevin.tian@xxxxxxxxx> > Reviewed-by: Jan Beulich <jbeulich@xxxxxxxx> Reviewed-by: Boris Ostrovsky <boris.ostrovsky@xxxxxxxxxx> _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx https://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |