[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-changelog] [xen-unstable] [XEN] Revert change to vcpu_guest_context which breaks guest ABI.



# 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


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.