On Wed, Mar 11, 2020 at 08:05:16AM -0700, Sean Christopherson wrote: > On Tue, Mar 10, 2020 at 06:51:49PM -0400, Krish Sadhukhan wrote: > > + /* > > + * The address of TR, FS, GS and LDTR must be canonical. > > + */ > > + TEST_SEGMENT_BASE_ADDR_CANONICAL(GUEST_BASE_TR, "GUEST_BASE_TR"); > > + TEST_SEGMENT_BASE_ADDR_CANONICAL(GUEST_BASE_FS, "GUEST_BASE_FS"); > > + TEST_SEGMENT_BASE_ADDR_CANONICAL(GUEST_BASE_GS, "GUEST_BASE_GS"); > > FS/GS bases aren't checked if the segment is unusable. Ah, I stand corrected, I misread the section on loading guest segs. There is an exception clause for FS/GS base inside the unusuable path. And the "checks on guest segments" clearly states FS/GS base are unconditionally checked.