aboutsummaryrefslogtreecommitdiffstats
path: root/arch/parisc/kernel/entry.S
diff options
context:
space:
mode:
authorAl Viro <viro@zeniv.linux.org.uk>2012-10-04 08:34:57 -0400
committerAl Viro <viro@zeniv.linux.org.uk>2012-10-14 19:36:37 -0400
commit7f1f311ac7b7b9c779fd207a20369f7fa3a61ba6 (patch)
treecf1fd972ab01e9c569bc8fe01226eec0f942681a /arch/parisc/kernel/entry.S
parent4e5ed85ab5f1c9973588d7226c2894016059d9f6 (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.S46
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)
1804ENDPROC(sys_vfork_wrapper) 1804ENDPROC(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
1836error_\execve:
1837 bv %r0(%r19)
1838 nop
1839 .endm
1840
1841 .import sys_execve
1842ENTRY(sys_execve_wrapper)
1843 execve_wrapper sys_execve
1844ENDPROC(sys_execve_wrapper)
1845
1846#ifdef CONFIG_64BIT
1847 .import sys32_execve
1848ENTRY(sys32_execve_wrapper)
1849 execve_wrapper sys32_execve
1850ENDPROC(sys32_execve_wrapper)
1851#endif
1852
1853ENTRY(sys_rt_sigreturn_wrapper) 1807ENTRY(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 */