WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-devel

Re: [Xen-devel] Some issues in recent ChangeSet.

To: "Zheng, Jeff" <jeff.zheng@xxxxxxxxx>
Subject: Re: [Xen-devel] Some issues in recent ChangeSet.
From: Steven Hand <Steven.Hand@xxxxxxxxxxxx>
Date: Wed, 23 Aug 2006 19:08:31 +0100
Cc: xen-devel@xxxxxxxxxxxxxxxxxxx, Steven.Hand@xxxxxxxxxxxx
Delivery-date: Wed, 23 Aug 2006 11:09:27 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxx
In-reply-to: Message from "Zheng, Jeff" <jeff.zheng@xxxxxxxxx> of "Wed, 23 Aug 2006 23:29:15 +0800." <096FBD6A74E0CF4B9E0AB042EA18F59C78F73C@xxxxxxxxxxxxxxxxxxxxxxxxxxxx>
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
We believe we've tracked down the root cause of at least some of
these issues - a proper fix is in the staging tree and should get 
pushed tonight (-unstable cset 11243:51a98a6c2c05). 

If you want to check it out earlier, or if the staging tree fails
to push for any reason, you can just apply the below patch to xen. 
In our testing this fixes the LTP math cases as well as the kernel
panic - not synching: kernel/sched.c issue. 

cheers,

S.




--- a/xen/arch/x86/x86_emulate.c        Wed Aug 23 17:14:38 2006 +0100
+++ b/xen/arch/x86/x86_emulate.c        Wed Aug 23 17:25:11 2006 +0100
@@ -846,6 +846,9 @@ x86_emulate_memop(
             emulate_1op("dec", dst, _regs.eflags);
             break;
         case 6: /* push */
+            /* Don't emulate if fault was on stack */
+            if ( _regs.error_code & 2 )
+                goto cannot_emulate; 
             /* 64-bit mode: PUSH always pushes a 64-bit operand. */
             if ( mode == X86EMUL_MODE_PROT64 )
        

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