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

[Xen-devel] [PATCH] bad interaction of domain_crash and multicall

To: <xen-devel@xxxxxxxxxxxxxxxxxxx>
Subject: [Xen-devel] [PATCH] bad interaction of domain_crash and multicall
From: "Jan Beulich" <jbeulich@xxxxxxxxxx>
Date: Fri, 10 Nov 2006 17:58:41 +0100
Delivery-date: Fri, 10 Nov 2006 08:57:46 -0800
Envelope-to: www-data@xxxxxxxxxxxxxxxxxx
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
If domain_crash_synchronous() is called in the context of a multicall,
the (physical) CPU this was executing on did not get its multicall state
cleared and would reject any further multicalls, likely leading to
crashing dom0 at some point.

If 3.0.3 gets rev'd at some point, I'd like to request inclusion of this
patch as being security relevant.

Signed-off-by: Jan Beulich <jbeulich@xxxxxxxxxx>

Index: 2006-10-30/xen/common/domain.c
===================================================================
--- 2006-10-30.orig/xen/common/domain.c 2006-11-08 12:07:40.000000000 +0100
+++ 2006-10-30/xen/common/domain.c      2006-11-08 12:08:55.000000000 +0100
@@ -22,6 +22,7 @@
 #include <xen/delay.h>
 #include <xen/shutdown.h>
 #include <xen/percpu.h>
+#include <xen/multicall.h>
 #include <asm/debugger.h>
 #include <public/sched.h>
 #include <public/vcpu.h>
@@ -242,6 +243,7 @@ void __domain_crash(struct domain *d)
         printk("Domain %d (vcpu#%d) crashed on cpu#%d:\n",
                d->domain_id, current->vcpu_id, smp_processor_id());
         show_execution_state(guest_cpu_user_regs());
+        this_cpu(mc_state).flags = 0;
     }
     else
     {


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

<Prev in Thread] Current Thread [Next in Thread>
  • [Xen-devel] [PATCH] bad interaction of domain_crash and multicall, Jan Beulich <=