Messages in this thread Patch in this message | | | From | Brian Gerst <> | Subject | [PATCH] x86-64: Use normal ptregs stub for execve | Date | Mon, 25 Jan 2010 10:47:33 -0500 |
| |
Execve historically passed regs by value, so it had a seperate stub. This is no longer true, so change it to use a normal PTREGSCALL stub.
Signed-off-by: Brian Gerst <brgerst@gmail.com> --- arch/x86/kernel/entry_64.S | 17 +---------------- 1 files changed, 1 insertions(+), 16 deletions(-)
diff --git a/arch/x86/kernel/entry_64.S b/arch/x86/kernel/entry_64.S index 0697ff1..0c31502 100644 --- a/arch/x86/kernel/entry_64.S +++ b/arch/x86/kernel/entry_64.S @@ -696,6 +696,7 @@ END(\label) PTREGSCALL stub_clone, sys_clone, %r8 PTREGSCALL stub_fork, sys_fork, %rdi PTREGSCALL stub_vfork, sys_vfork, %rdi + PTREGSCALL stub_execve, sys_execve, %rcx PTREGSCALL stub_sigaltstack, sys_sigaltstack, %rdx PTREGSCALL stub_iopl, sys_iopl, %rsi @@ -712,22 +713,6 @@ ENTRY(ptregscall_common) CFI_ENDPROC END(ptregscall_common) -ENTRY(stub_execve) - CFI_STARTPROC - popq %r11 - CFI_ADJUST_CFA_OFFSET -8 - CFI_REGISTER rip, r11 - SAVE_REST - FIXUP_TOP_OF_STACK %r11 - movq %rsp, %rcx - call sys_execve - RESTORE_TOP_OF_STACK %r11 - movq %rax,RAX(%rsp) - RESTORE_REST - jmp int_ret_from_sys_call - CFI_ENDPROC -END(stub_execve) - /* * sigreturn is special because it needs to restore all registers on return. * This cannot be done with SYSRET, so use the IRET return path instead. -- 1.6.6
| |