# HG changeset patch
# User kfraser@xxxxxxxxxxxxxxxxxxxxx
# Date 1169208231 0
# Node ID 9b76e8f30c88548134587dd98a1172ab82ffb659
# Parent 2ef07c6107296c4a0366b1088c5a64b310c29d50
[XEN] Revert change to vcpu_guest_context which breaks guest ABI.
HVM save/restore needs to save/restore vcpu state via the new
stream-based load/save hypercalls.
Signed-off-by: Keir Fraser <keir@xxxxxxxxxxxxx>
---
xen/arch/x86/domain.c | 1 -
xen/arch/x86/domctl.c | 4 +---
xen/common/domain.c | 8 --------
xen/include/public/arch-x86/xen.h | 1 -
4 files changed, 1 insertion(+), 13 deletions(-)
diff -r 2ef07c610729 -r 9b76e8f30c88 xen/arch/x86/domain.c
--- a/xen/arch/x86/domain.c Fri Jan 19 11:58:52 2007 +0000
+++ b/xen/arch/x86/domain.c Fri Jan 19 12:03:51 2007 +0000
@@ -573,7 +573,6 @@ int arch_set_info_guest(
else
{
hvm_load_cpu_guest_regs(v, &v->arch.guest_context.user_regs);
- hvm_load_cpu_context(v, &v->arch.guest_context.hvmcpu_ctxt);
}
if ( test_bit(_VCPUF_initialised, &v->vcpu_flags) )
diff -r 2ef07c610729 -r 9b76e8f30c88 xen/arch/x86/domctl.c
--- a/xen/arch/x86/domctl.c Fri Jan 19 11:58:52 2007 +0000
+++ b/xen/arch/x86/domctl.c Fri Jan 19 12:03:51 2007 +0000
@@ -322,10 +322,8 @@ void arch_get_info_guest(struct vcpu *v,
if ( is_hvm_vcpu(v) )
{
- if ( !IS_COMPAT(v->domain) ) {
+ if ( !IS_COMPAT(v->domain) )
hvm_store_cpu_guest_regs(v, &c.nat->user_regs, c.nat->ctrlreg);
- hvm_save_cpu_context(v, &c.nat->hvmcpu_ctxt);
- }
#ifdef CONFIG_COMPAT
else
{
diff -r 2ef07c610729 -r 9b76e8f30c88 xen/common/domain.c
--- a/xen/common/domain.c Fri Jan 19 11:58:52 2007 +0000
+++ b/xen/common/domain.c Fri Jan 19 12:03:51 2007 +0000
@@ -506,14 +506,6 @@ int set_info_guest(struct domain *d,
if ( rc == 0 )
rc = arch_set_info_guest(v, c);
- /*XXX: hvm smp guest restore support */
- if ( rc == 0 &&
- v->vcpu_id != 0 &&
- is_hvm_vcpu(v) &&
- test_and_clear_bit(_VCPUF_down, &v->vcpu_flags) ) {
- vcpu_wake(v);
- }
-
domain_unpause(d);
xfree(c.nat);
diff -r 2ef07c610729 -r 9b76e8f30c88 xen/include/public/arch-x86/xen.h
--- a/xen/include/public/arch-x86/xen.h Fri Jan 19 11:58:52 2007 +0000
+++ b/xen/include/public/arch-x86/xen.h Fri Jan 19 12:03:51 2007 +0000
@@ -218,7 +218,6 @@ struct vcpu_guest_context {
#endif
#endif
unsigned long vm_assist; /* VMASST_TYPE_* bitmap */
- struct hvmcpu_context hvmcpu_ctxt; /* whole vmcs region */
#ifdef __x86_64__
/* Segment base addresses. */
uint64_t fs_base;
_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog
|