x86_64: ia32entry adjustments
Consolidate the three 32-bit system call entry points so that they all treat registers in similar ways. Signed-off-by: Jan Beulich <jbeulich@novell.com> Signed-off-by: Andi Kleen <ak@suse.de> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
committed by
Linus Torvalds
parent
c3508f8f34
commit
cdc1793ef7
@@ -104,7 +104,7 @@ ENTRY(ia32_sysenter_target)
|
|||||||
pushq %rax
|
pushq %rax
|
||||||
CFI_ADJUST_CFA_OFFSET 8
|
CFI_ADJUST_CFA_OFFSET 8
|
||||||
cld
|
cld
|
||||||
SAVE_ARGS 0,0,0
|
SAVE_ARGS 0,0,1
|
||||||
/* no need to do an access_ok check here because rbp has been
|
/* no need to do an access_ok check here because rbp has been
|
||||||
32bit zero extended */
|
32bit zero extended */
|
||||||
1: movl (%rbp),%r9d
|
1: movl (%rbp),%r9d
|
||||||
@@ -294,7 +294,7 @@ ia32_badarg:
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
ENTRY(ia32_syscall)
|
ENTRY(ia32_syscall)
|
||||||
CFI_STARTPROC simple
|
CFI_STARTPROC32 simple
|
||||||
CFI_SIGNAL_FRAME
|
CFI_SIGNAL_FRAME
|
||||||
CFI_DEF_CFA rsp,SS+8-RIP
|
CFI_DEF_CFA rsp,SS+8-RIP
|
||||||
/*CFI_REL_OFFSET ss,SS-RIP*/
|
/*CFI_REL_OFFSET ss,SS-RIP*/
|
||||||
@@ -330,6 +330,7 @@ ia32_sysret:
|
|||||||
|
|
||||||
ia32_tracesys:
|
ia32_tracesys:
|
||||||
SAVE_REST
|
SAVE_REST
|
||||||
|
CLEAR_RREGS
|
||||||
movq $-ENOSYS,RAX(%rsp) /* really needed? */
|
movq $-ENOSYS,RAX(%rsp) /* really needed? */
|
||||||
movq %rsp,%rdi /* &pt_regs -> arg1 */
|
movq %rsp,%rdi /* &pt_regs -> arg1 */
|
||||||
call syscall_trace_enter
|
call syscall_trace_enter
|
||||||
|
Reference in New Issue
Block a user