|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-changelog] [xen-unstable] arm: implement VGCF_online
# HG changeset patch
# User Ian Campbell <ian.campbell@xxxxxxxxxx>
# Date 1349791531 -3600
# Node ID ea1e095a6032ac10b96492b6b6a6904e2bb5a0d6
# Parent 034ea69233fe5f8d35c91ce77920e3f397bd93f4
arm: implement VGCF_online
Signed-off-by: Ian Campbell <ian.campbell@xxxxxxxxxx>
Acked-by: Tim Deegan <tim@xxxxxxx>
Committed-by: Ian Campbell <ian.campbell@xxxxxxxxxx>
---
diff -r 034ea69233fe -r ea1e095a6032 tools/libxc/xc_dom_arm.c
--- a/tools/libxc/xc_dom_arm.c Tue Oct 09 15:05:30 2012 +0100
+++ b/tools/libxc/xc_dom_arm.c Tue Oct 09 15:05:31 2012 +0100
@@ -101,6 +101,8 @@ static int vcpu_arm(struct xc_dom_image
ctxt->user_regs.cpsr = PSR_ABT_MASK|PSR_FIQ_MASK|PSR_IRQ_MASK|PSR_MODE_SVC;
+ ctxt->flags = VGCF_online;
+
DOMPRINTF("Initial state CPSR %#"PRIx32" PC %#"PRIx32,
ctxt->user_regs.cpsr, ctxt->user_regs.pc);
diff -r 034ea69233fe -r ea1e095a6032 xen/arch/arm/domain.c
--- a/xen/arch/arm/domain.c Tue Oct 09 15:05:30 2012 +0100
+++ b/xen/arch/arm/domain.c Tue Oct 09 15:05:31 2012 +0100
@@ -503,7 +503,10 @@ int arch_set_info_guest(
v->arch.ttbr1 = ctxt->ttbr1;
v->arch.ttbcr = ctxt->ttbcr;
- clear_bit(_VPF_down, &v->pause_flags);
+ if ( ctxt->flags & VGCF_online )
+ clear_bit(_VPF_down, &v->pause_flags);
+ else
+ set_bit(_VPF_down, &v->pause_flags);
return 0;
}
diff -r 034ea69233fe -r ea1e095a6032 xen/include/public/arch-arm.h
--- a/xen/include/public/arch-arm.h Tue Oct 09 15:05:30 2012 +0100
+++ b/xen/include/public/arch-arm.h Tue Oct 09 15:05:31 2012 +0100
@@ -125,6 +125,10 @@ typedef uint64_t xen_pfn_t;
typedef uint32_t xen_ulong_t;
struct vcpu_guest_context {
+#define _VGCF_online 0
+#define VGCF_online (1<<_VGCF_online)
+ uint32_t flags; /* VGCF_* */
+
struct cpu_user_regs user_regs; /* User-level CPU registers */
uint32_t sctlr;
_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |