ia64/xen-unstable

changeset 13513:9b76e8f30c88

[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@xensource.com>
author kfraser@localhost.localdomain
date Fri Jan 19 12:03:51 2007 +0000 (2007-01-19)
parents 2ef07c610729
children ba18f07cb61c
files xen/arch/x86/domain.c xen/arch/x86/domctl.c xen/common/domain.c xen/include/public/arch-x86/xen.h
line diff
     1.1 --- a/xen/arch/x86/domain.c	Fri Jan 19 11:58:52 2007 +0000
     1.2 +++ b/xen/arch/x86/domain.c	Fri Jan 19 12:03:51 2007 +0000
     1.3 @@ -573,7 +573,6 @@ int arch_set_info_guest(
     1.4      else
     1.5      {
     1.6          hvm_load_cpu_guest_regs(v, &v->arch.guest_context.user_regs);
     1.7 -        hvm_load_cpu_context(v, &v->arch.guest_context.hvmcpu_ctxt);
     1.8      }
     1.9  
    1.10      if ( test_bit(_VCPUF_initialised, &v->vcpu_flags) )
     2.1 --- a/xen/arch/x86/domctl.c	Fri Jan 19 11:58:52 2007 +0000
     2.2 +++ b/xen/arch/x86/domctl.c	Fri Jan 19 12:03:51 2007 +0000
     2.3 @@ -322,10 +322,8 @@ void arch_get_info_guest(struct vcpu *v,
     2.4  
     2.5      if ( is_hvm_vcpu(v) )
     2.6      {
     2.7 -        if ( !IS_COMPAT(v->domain) ) {
     2.8 +        if ( !IS_COMPAT(v->domain) )
     2.9              hvm_store_cpu_guest_regs(v, &c.nat->user_regs, c.nat->ctrlreg);
    2.10 -            hvm_save_cpu_context(v, &c.nat->hvmcpu_ctxt);
    2.11 -        }
    2.12  #ifdef CONFIG_COMPAT
    2.13          else
    2.14          {
     3.1 --- a/xen/common/domain.c	Fri Jan 19 11:58:52 2007 +0000
     3.2 +++ b/xen/common/domain.c	Fri Jan 19 12:03:51 2007 +0000
     3.3 @@ -506,14 +506,6 @@ int set_info_guest(struct domain *d,
     3.4      if ( rc == 0 )
     3.5          rc = arch_set_info_guest(v, c);
     3.6  
     3.7 -    /*XXX: hvm smp guest restore support */
     3.8 -    if ( rc == 0 &&
     3.9 -            v->vcpu_id != 0 &&
    3.10 -            is_hvm_vcpu(v) &&
    3.11 -            test_and_clear_bit(_VCPUF_down, &v->vcpu_flags) ) {
    3.12 -        vcpu_wake(v);
    3.13 -    }
    3.14 -
    3.15      domain_unpause(d);
    3.16  
    3.17      xfree(c.nat);
     4.1 --- a/xen/include/public/arch-x86/xen.h	Fri Jan 19 11:58:52 2007 +0000
     4.2 +++ b/xen/include/public/arch-x86/xen.h	Fri Jan 19 12:03:51 2007 +0000
     4.3 @@ -218,7 +218,6 @@ struct vcpu_guest_context {
     4.4  #endif
     4.5  #endif
     4.6      unsigned long vm_assist;                /* VMASST_TYPE_* bitmap */
     4.7 -    struct hvmcpu_context hvmcpu_ctxt;      /* whole vmcs region */
     4.8  #ifdef __x86_64__
     4.9      /* Segment base addresses. */
    4.10      uint64_t      fs_base;