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

[Xen-devel] [3.0.4 PATCH][RESEND] disable events fix



As this affects domU's I'd like to get this in 3.0.4-2 if possible.

thanks
john

# HG changeset patch
# User john.levon@xxxxxxx
# Date 1170358345 28800
# Node ID 46b2669ec422e54c52972b02534e50093784b3d7
# Parent  be18b8e43f73e46314b0d796a68d7949e9c8bc86
Save disable event flags in guest context

We weren't storing the *disables_events flags when grabbing the guest context,
causing 64-bit guests that use the flags to fail when restoring.

Signed-off-by: John Levon <john.levon@xxxxxxx>

diff --git a/xen/arch/x86/domctl.c b/xen/arch/x86/domctl.c
--- a/xen/arch/x86/domctl.c
+++ b/xen/arch/x86/domctl.c
@@ -305,11 +305,15 @@ void arch_getdomaininfo_ctxt(
         c->user_regs.eflags |= v->arch.iopl << 12;
     }
 
-    c->flags = 0;
     if ( test_bit(_VCPUF_fpu_initialised, &v->vcpu_flags) )
-        c->flags |= VGCF_i387_valid;
+        __set_bit(_VGCF_i387_valid, &c->flags);
+    else
+        __clear_bit(_VGCF_i387_valid, &c->flags);
+
     if ( guest_kernel_mode(v, &v->arch.guest_context.user_regs) )
-        c->flags |= VGCF_in_kernel;
+        __set_bit(_VGCF_in_kernel, &c->flags);
+    else
+        __clear_bit(_VGCF_in_kernel, &c->flags);
 
     c->ctrlreg[3] = xen_pfn_to_cr3(pagetable_get_pfn(v->arch.guest_table));
 

_______________________________________________
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®.