diff options
author | Al Viro <viro@zeniv.linux.org.uk> | 2012-10-04 08:34:57 -0400 |
---|---|---|
committer | Al Viro <viro@zeniv.linux.org.uk> | 2012-10-14 19:36:37 -0400 |
commit | 7f1f311ac7b7b9c779fd207a20369f7fa3a61ba6 (patch) | |
tree | cf1fd972ab01e9c569bc8fe01226eec0f942681a /arch/parisc/kernel/entry.S | |
parent | 4e5ed85ab5f1c9973588d7226c2894016059d9f6 (diff) |
parisc: switch to generic sys_execve()
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'arch/parisc/kernel/entry.S')
-rw-r--r-- | arch/parisc/kernel/entry.S | 46 |
1 files changed, 0 insertions, 46 deletions
diff --git a/arch/parisc/kernel/entry.S b/arch/parisc/kernel/entry.S index a26917da9b2f..7d22e97347b7 100644 --- a/arch/parisc/kernel/entry.S +++ b/arch/parisc/kernel/entry.S | |||
@@ -1804,52 +1804,6 @@ ENTRY(sys_vfork_wrapper) | |||
1804 | ENDPROC(sys_vfork_wrapper) | 1804 | ENDPROC(sys_vfork_wrapper) |
1805 | 1805 | ||
1806 | 1806 | ||
1807 | .macro execve_wrapper execve | ||
1808 | LDREG TI_TASK-THREAD_SZ_ALGN-FRAME_SIZE(%r30),%r1 | ||
1809 | ldo TASK_REGS(%r1),%r1 /* get pt regs */ | ||
1810 | |||
1811 | /* | ||
1812 | * Do we need to save/restore r3-r18 here? | ||
1813 | * I don't think so. why would new thread need old | ||
1814 | * threads registers? | ||
1815 | */ | ||
1816 | |||
1817 | /* %arg0 - %arg3 are already saved for us. */ | ||
1818 | |||
1819 | STREG %r2,-RP_OFFSET(%r30) | ||
1820 | ldo FRAME_SIZE(%r30),%r30 | ||
1821 | #ifdef CONFIG_64BIT | ||
1822 | ldo -16(%r30),%r29 /* Reference param save area */ | ||
1823 | #endif | ||
1824 | BL \execve,%r2 | ||
1825 | copy %r1,%arg0 | ||
1826 | |||
1827 | ldo -FRAME_SIZE(%r30),%r30 | ||
1828 | LDREG -RP_OFFSET(%r30),%r2 | ||
1829 | |||
1830 | /* If exec succeeded we need to load the args */ | ||
1831 | |||
1832 | ldo -1024(%r0),%r1 | ||
1833 | cmpb,>>= %r28,%r1,error_\execve | ||
1834 | copy %r2,%r19 | ||
1835 | |||
1836 | error_\execve: | ||
1837 | bv %r0(%r19) | ||
1838 | nop | ||
1839 | .endm | ||
1840 | |||
1841 | .import sys_execve | ||
1842 | ENTRY(sys_execve_wrapper) | ||
1843 | execve_wrapper sys_execve | ||
1844 | ENDPROC(sys_execve_wrapper) | ||
1845 | |||
1846 | #ifdef CONFIG_64BIT | ||
1847 | .import sys32_execve | ||
1848 | ENTRY(sys32_execve_wrapper) | ||
1849 | execve_wrapper sys32_execve | ||
1850 | ENDPROC(sys32_execve_wrapper) | ||
1851 | #endif | ||
1852 | |||
1853 | ENTRY(sys_rt_sigreturn_wrapper) | 1807 | ENTRY(sys_rt_sigreturn_wrapper) |
1854 | LDREG TI_TASK-THREAD_SZ_ALGN-FRAME_SIZE(%r30),%r26 | 1808 | LDREG TI_TASK-THREAD_SZ_ALGN-FRAME_SIZE(%r30),%r26 |
1855 | ldo TASK_REGS(%r26),%r26 /* get pt regs */ | 1809 | ldo TASK_REGS(%r26),%r26 /* get pt regs */ |