x86_64: syscall argument clobber check
PATCH 2/7 x86_64: syscall argument clobber check
(noticed during preparation of initial PAE-guest-on-64bit patches) The offset used to compare the return IP was apparently wrong; I didn't actually test that things didn't work as intended (or that they do now with this change), it just caught my eye that the UREGS_rip access a little further up in the same function was done with adjustment for the extra item on the stack, but this one wasn't.
Signed-off-by Jan Beulich <[email protected]>
xen/arch/x86/x86_64/entry.S +1 -1
@@ -152,7 +152,7 @@ ENTRY(syscall_enter) #ifndef NDEBUG /* Deliberately corrupt parameter regs used by this hypercall. */ popq %r10 # Shadow RIP - cmpq %r10,UREGS_rip(%rsp) + cmpq %r10,UREGS_rip+8(%rsp) popq %rcx # Shadow hypercall index jne skip_clobber /* If RIP has changed then don't clobber. */ leaq hypercall_args_table(%rip),%r10
_______________________________________________
Xen-devel mailing list
[email protected]
http://lists.xensource.com/xen-devel