# HG changeset patch
# User kfraser@xxxxxxxxxxxxxxxxxxxxx
# Date 1169728127 0
# Node ID d6d27c649fd6d3fe57c34e525de48ff3588f80c6
# Parent 42aaf08dd20ec6cabf9b4c3aa536b918be352352
[HVM] Wake up APs immediately during restore.
From: Edwin Zhai <edwin.zhai@xxxxxxxxx>
Signed-off-by: Keir Fraser <keir@xxxxxxxxxxxxx>
---
xen/arch/x86/hvm/hvm.c | 16 +++++++++++++++-
1 files changed, 15 insertions(+), 1 deletion(-)
diff -r 42aaf08dd20e -r d6d27c649fd6 xen/arch/x86/hvm/hvm.c
--- a/xen/arch/x86/hvm/hvm.c Thu Jan 25 12:24:43 2007 +0000
+++ b/xen/arch/x86/hvm/hvm.c Thu Jan 25 12:28:47 2007 +0000
@@ -170,12 +170,26 @@ void hvm_domain_destroy(struct domain *d
unmap_domain_page_global((void *)d->arch.hvm_domain.buffered_io_va);
}
+int hvm_load_cpu_ctxt(hvm_domain_context_t *h, void *opaque, int version)
+{
+ struct vcpu *v = opaque;
+
+ if ( hvm_funcs.load_cpu_ctxt(h, opaque, version) < 0 )
+ return -EINVAL;
+
+ /* Auxiliary processors shoudl be woken immediately. */
+ if ( test_and_clear_bit(_VCPUF_down, &v->vcpu_flags) )
+ vcpu_wake(v);
+
+ return 0;
+}
+
int hvm_vcpu_initialise(struct vcpu *v)
{
int rc;
hvm_register_savevm(v->domain, "xen_hvm_cpu", v->vcpu_id, 1,
- hvm_funcs.save_cpu_ctxt, hvm_funcs.load_cpu_ctxt,
+ hvm_funcs.save_cpu_ctxt, hvm_load_cpu_ctxt,
(void *)v);
if ( (rc = vlapic_init(v)) != 0 )
_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog
|