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

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



Ha, well I'm glad the solution was so straightforward! :-)

 K.

On 04/11/2009 18:54, "Allan Graves" <allan.graves@xxxxxxxxxx> wrote:

> Keir,
> 
> Thank you.  Umm... I guess I wasn't sure exactly what the changelog
> should say - but clearly something other than what I would have titled
> it.  Which is probably cause I don't think I could have fixed the bug. :)
> 
> In any case, 3.4.1 does fix the issue!
> 
> Thank you so much for helping me through this!
> 
> Allan
> 
> 
> 
> Keir Fraser wrote:
>> Well, what would you expect the changelog to say? It's fixed in the
>> xen-3.4-testing.hg repository by changeset 19697, which is a backport of
>> xen-unstable.hg:19953.
>> 
>>  -- Keir
>> 
>> On 01/11/2009 19:32, "Allan Graves" <allan.graves@xxxxxxxxxx> wrote:
>> 
>>> Keir -
>>> 
>>> Hmm... according to /sys/hypervisor/version, I'm running 3.4.0.
>>> 
>>> Is there a reasonable chance this is fixed in 3.4.1?  I haven't seen
>>> anything in the changelogs...
>>> 
>>> 
>>> Allan
>>> 
>>> 
>>> 
>>> Keir Fraser wrote:
>>>> What version of Xen are you using? This bug may be fixed in Xen 3.3.2 and
>>>> Xen 3.4.1.
>>>> 
>>>>  -- Keir
>>>> 
>>>> On 30/10/2009 01:23, "Allan Graves" <allan.graves@xxxxxxxxxx> wrote:
>>>> 
>>>>   
>>>>> (Please excuse double posting - I was told xen-users was not the right
>>>>> list, to put it on xen-devel, as it was not a technical support query,
>>>>> but an issue.)
>>>>> 
>>>>> 
>>>>> 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:spz6vmdothb
>>>>> 2n
>>>>> jf
>>>>> b+state:results
>>>>> 
>>>>> 
>>>>> 
>>>>> Anyone have a solution to this? :)
>>>>> 
>>>>> Allan
>>>>> 
>>>>> 
>>>>> 
>>>>> 
>>>>> 
>>>>> _______________________________________________
>>>>> Xen-devel mailing list
>>>>> Xen-devel@xxxxxxxxxxxxxxxxxxx
>>>>> http://lists.xensource.com/xen-devel
>>>>>     
>>>> 
>>>>   
>> 
>> 



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


 


Rackspace

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