[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-users] 64 bit Intel HVM Weirdness - setjmp\longjump fp exception in Xen, not on real hardware or AMD HVM



On Thu, Oct 29, 2009 at 07:18:46PM -0400, Allan Graves wrote:
> The following program will crash with a fp exception on an INTEL 64 bit HVM 
> domU only:
> #include <setjmp.h>
> jmp_buf env; main() { if(setjmp(env)) return; longjmp(env, 1); }
> 
> 
> This can be seen using both Linux and Windows 64 bit Guests.
> 
> 
> My machine is a Core 2 Duo with both VT-D and VT-X extensions enabled.  
> 
> Unfortunately, this is blocking our usage of 64 bit HVM Windows guests.  
> 
> A similar issue was reported in KVM and recently fixed, some of their 
> analysis is below:
> --------------------------------------------------
> >>> It seems that the problem can be reproduced by compiling the
> >>> following simple program using cygwin's gcc. The program crashes on
> >>> w2k3-amd64 on kvm-83 on core2-duo, and it does not crash on the
> >>> same w2k3-amd64 installation on kvm-83 on AMD Phenom.
> >>>
> >>> #include <setjmp.h>
> >>>
> >>> jmp_buf env; main() { if(setjmp(env)) return; longjmp(env, 1); }
> >>>
> >>> The problem seems to be in the instruction ``mov gs,ax'' (Intel
> >>> syntax) in the longjmp() code. If I let the virtual machine execute
> >>> the instruction, the program crashes. However, if I step over the 
> >>> instruction using the vs2008 debugger, the program completes
> >>> without crashing. Thus, I think that this is the instruction that
> >>> Avi is looking for, but I don't know how to proceed from here.
> >>> -------------------------------------------------------
> http://markmail.org/message/owy3x7pf6oywdx5e#query:+page:1+mid:spz6vmdothb2njfb+state:results
> 
> 
> Anyone have a solution to this? :)  
>

I think this should be sent to xen-devel instead :)

-- Pasi


_______________________________________________
Xen-users mailing list
Xen-users@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-users


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.