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

[Xen-changelog] [xen-unstable] x86/32on64: adjust address when converting syscall to fault



# HG changeset patch
# User Keir Fraser <keir.fraser@xxxxxxxxxx>
# Date 1228490519 0
# Node ID e34f3e314ecf3c28a295351ade9e02596c0dad81
# Parent  c520af4bde59d5756d6c58014d5ae0b9011840bc
x86/32on64: adjust address when converting syscall to fault

The faulting address is at the start of the syscall instruction rather
than at the following one.

Signed-off-by: Jan Beulich <jbeulich@xxxxxxxxxx>
---
 xen/arch/x86/x86_64/compat/entry.S |    1 +
 1 files changed, 1 insertion(+)

diff -r c520af4bde59 -r e34f3e314ecf xen/arch/x86/x86_64/compat/entry.S
--- a/xen/arch/x86/x86_64/compat/entry.S        Fri Dec 05 14:46:38 2008 +0000
+++ b/xen/arch/x86/x86_64/compat/entry.S        Fri Dec 05 15:21:59 2008 +0000
@@ -234,6 +234,7 @@ 1:      movq  %rax,TRAPBOUNCE_eip(%rdx)
         call  compat_create_bounce_frame
         jmp   compat_test_all_events
 2:      movl  $TRAP_gp_fault,UREGS_entry_vector(%rsp)
+        subl  $2,UREGS_rip(%rsp)
         movq  VCPU_gp_fault_addr(%rbx),%rax
         movzwl VCPU_gp_fault_sel(%rbx),%esi
         movb  $(TBF_EXCEPTION|TBF_EXCEPTION_ERRCODE|TBF_INTERRUPT),%cl

_______________________________________________
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®.