From: Christoph Egger Subject: [PATCH] svm: Fix migration in the middle of a syscall Date: Wed, 27 Jan 2010 14:17:50 +0100 Message-ID: <201001271417.51234.Christoph.Egger@amd.com> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="Boundary-00=_/zDYL6OfSDrJ6mq" Return-path: List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xensource.com Errors-To: xen-devel-bounces@lists.xensource.com To: xen-devel@lists.xensource.com List-Id: xen-devel@lists.xenproject.org --Boundary-00=_/zDYL6OfSDrJ6mq Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Content-Disposition: inline Hi! Attached patch fixes migration in the middle of a syscall. Signed-off-by: Christoph Egger Keir: Please also apply this patch to xen-3.4-testing. -- ---to satisfy European Law for business letters: Advanced Micro Devices GmbH Karl-Hammerschmidt-Str. 34, 85609 Dornach b. Muenchen Geschaeftsfuehrer: Andrew Bowd, Thomas M. McCoy, Giuliano Meroni Sitz: Dornach, Gemeinde Aschheim, Landkreis Muenchen Registergericht Muenchen, HRB Nr. 43632 --Boundary-00=_/zDYL6OfSDrJ6mq Content-Type: text/x-diff; charset="iso 8859-15"; name="xen_vmcb_kerngsbase.diff" Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename="xen_vmcb_kerngsbase.diff" diff -r c6f0968fdfe2 xen/arch/x86/hvm/svm/svm.c --- a/xen/arch/x86/hvm/svm/svm.c Mon Jan 25 14:34:36 2010 +0100 +++ b/xen/arch/x86/hvm/svm/svm.c Wed Jan 27 14:17:31 2010 +0100 @@ -192,6 +192,7 @@ static int svm_vmcb_save(struct vcpu *v, c->sysenter_cs = v->arch.hvm_svm.guest_sysenter_cs; c->sysenter_esp = v->arch.hvm_svm.guest_sysenter_esp; c->sysenter_eip = v->arch.hvm_svm.guest_sysenter_eip; + c->shadow_gs = vmcb->kerngsbase; c->pending_event = 0; c->error_code = 0; @@ -251,6 +252,7 @@ static int svm_vmcb_restore(struct vcpu v->arch.hvm_svm.guest_sysenter_cs = c->sysenter_cs; v->arch.hvm_svm.guest_sysenter_esp = c->sysenter_esp; v->arch.hvm_svm.guest_sysenter_eip = c->sysenter_eip; + vmcb->kerngsbase = c->shadow_gs; if ( paging_mode_hap(v->domain) ) { --Boundary-00=_/zDYL6OfSDrJ6mq Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel --Boundary-00=_/zDYL6OfSDrJ6mq--