[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] AMD VMMCALL and VM86 mode
----- andrew.cooper3@xxxxxxxxxx wrote: > On 09/12/16 19:55, Andrew Cooper wrote: > > On 09/12/16 19:55, Boris Ostrovsky wrote: > >> On 12/09/2016 02:01 PM, Andrew Cooper wrote: > >>> Hello, > >>> > >>> While working on XSA-192, I found a curious thing. On AMD > hardware, the > >>> VMMCALL instruction appears to behave like a nop if executed in > VM86 > >>> mode. All other processor modes work fine. > >>> > >>> The documentation suggests it should be valid in any situation, > but I > >>> never get a #VMEXIT from it. > >> And I assume GENERAL2_INTERCEPT_VMMCALL is set (which is what we > have in > >> Xen by default)? > > Yes, because I have already used hypercalls to get text to the > console > > before entering vm86 mode. > > > >> What happens if you don't set it? > > Let me do some hacking and see. > > Outside of vm86 mode, VMMCALL raises #UD, which is expected as it > wasn't > intercepted. > > From within vm86 mode, I now get #GP rather than #UD. > > There is certainly an argument to be made that VMMCALL inside vm86 > mode > should trap to the vm86 monitor and #GP would be the expected way of > that happening, but this also doesn't match the documentation. Just curious: why do you think #GP could be a reasonable exception here? It's #UD because if not intercepted it doesn't make sense to execute it. But either way, I think AMD should clarify this. Suravee, can you find out what the expected behavior is? -boris _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx https://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |