From 2b5e5c167ce4bda75d3c73e12bb91af0348ede53 Mon Sep 17 00:00:00 2001
From: Roger Pau Monne <roger.pau@citrix.com>
Date: Tue, 17 Sep 2013 13:03:25 +0200
Subject: [PATCH 1/3]

---
 sys/amd64/amd64/mp_machdep.c |    2 +-
 sys/i386/i386/mp_machdep.c   |    2 +-
 sys/x86/xen/hvm.c            |    4 ++--
 3 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/sys/amd64/amd64/mp_machdep.c b/sys/amd64/amd64/mp_machdep.c
index 4805856..1f02211 100644
--- a/sys/amd64/amd64/mp_machdep.c
+++ b/sys/amd64/amd64/mp_machdep.c
@@ -1469,7 +1469,7 @@ cpususpend_handler(void)
 	cpu = PCPU_GET(cpuid);
 
 #ifdef XENHVM
-	mtx_assert(&smp_ipi_mtx, MA_OWNED);
+	mtx_assert(&smp_ipi_mtx, MA_NOTOWNED);
 #endif
 
 	if (savectx(susppcbs[cpu])) {
diff --git a/sys/i386/i386/mp_machdep.c b/sys/i386/i386/mp_machdep.c
index 215b892..1d6d58a 100644
--- a/sys/i386/i386/mp_machdep.c
+++ b/sys/i386/i386/mp_machdep.c
@@ -1530,7 +1530,7 @@ cpususpend_handler(void)
 	cpu = PCPU_GET(cpuid);
 
 #ifdef XENHVM
-	KASSERT((!mtx_owned(&smp_ipi_mtx)), ("IPI in process while suspending"));
+	mtx_assert(&smp_ipi_mtx, MA_NOTOWNED);
 #endif
 
 	if (savectx(susppcbs[cpu])) {
diff --git a/sys/x86/xen/hvm.c b/sys/x86/xen/hvm.c
index 10b31dd..4b47d39 100644
--- a/sys/x86/xen/hvm.c
+++ b/sys/x86/xen/hvm.c
@@ -712,8 +712,7 @@ xen_hvm_init_cpu(void)
 	struct vcpu_info *vcpu_info;
 	int cpu, rc;
 
-	vcpu_info = DPCPU_PTR(vcpu_local_info);
-	if (vcpu_info != NULL) {
+	if (DPCPU_GET(vcpu_info) != NULL) {
 		/*
 		 * vcpu_info has already been set,
 		 * this happens on failed migration,
@@ -722,6 +721,7 @@ xen_hvm_init_cpu(void)
 		return;
 	}
 
+	vcpu_info = DPCPU_PTR(vcpu_local_info);
 	cpu = PCPU_GET(acpi_id);
 	info.mfn = vtophys(vcpu_info) >> PAGE_SHIFT;
 	info.offset = vtophys(vcpu_info) - trunc_page(vtophys(vcpu_info));
-- 
1.7.7.5 (Apple Git-26)

