ia64/xen-unstable

changeset 10083:0fbec6836905

Fix register corruption caused by c/s 9922.
From: Tom Woller <thomas.woller@amd.com>
Signed-off-by: Keir Fraser <keir@xensource.com>
author kaf24@firebug.cl.cam.ac.uk
date Thu May 18 00:01:59 2006 +0100 (2006-05-18)
parents b4361ae1aabc
children 1d2e4a873003
files xen/arch/x86/hvm/svm/svm.c
line diff
     1.1 --- a/xen/arch/x86/hvm/svm/svm.c	Wed May 17 23:53:01 2006 +0100
     1.2 +++ b/xen/arch/x86/hvm/svm/svm.c	Thu May 18 00:01:59 2006 +0100
     1.3 @@ -546,7 +546,6 @@ static inline int svm_do_debugout(unsign
     1.4      return 1;
     1.5  }
     1.6  
     1.7 -
     1.8  void save_svm_cpu_user_regs(struct vcpu *v, struct cpu_user_regs *ctxt)
     1.9  {
    1.10      struct vmcb_struct *vmcb = v->arch.hvm_svm.vmcb;
    1.11 @@ -577,8 +576,6 @@ void svm_store_cpu_user_regs(struct cpu_
    1.12      regs->ds     = vmcb->ds.sel;
    1.13      regs->es     = vmcb->es.sel;
    1.14      regs->ss     = vmcb->ss.sel;
    1.15 -    regs->fs     = vmcb->fs.sel;
    1.16 -    regs->gs     = vmcb->gs.sel;
    1.17  }
    1.18  
    1.19  /* XXX Use svm_load_cpu_guest_regs instead */
    1.20 @@ -594,12 +591,6 @@ void svm_load_cpu_user_regs(struct vcpu 
    1.21      vmcb->rflags   = regs->eflags;
    1.22      vmcb->cs.sel   = regs->cs;
    1.23      vmcb->rip      = regs->eip;
    1.24 -
    1.25 -    vmcb->ds.sel   = regs->ds;
    1.26 -    vmcb->es.sel   = regs->es;
    1.27 -    vmcb->fs.sel   = regs->fs;
    1.28 -    vmcb->gs.sel   = regs->gs;
    1.29 -
    1.30      if (regs->eflags & EF_TF)
    1.31          *intercepts |= EXCEPTION_BITMAP_DB;
    1.32      else