summaryrefslogtreecommitdiffstats
path: root/arch/sparc64/kernel/syscalls.S
diff options
context:
space:
mode:
authorDavid S. Miller2008-08-25 05:10:23 +0200
committerDavid S. Miller2008-08-25 05:34:31 +0200
commitfe06ccaad20257e3bd348b2df9e811fd92211a80 (patch)
treea5bcaa12ada3428e58524cbdedc0f1bf60bb04b7 /arch/sparc64/kernel/syscalls.S
parentsparc: Add GPIO layer support. (diff)
downloadkernel-qcow2-linux-fe06ccaad20257e3bd348b2df9e811fd92211a80.tar.gz
kernel-qcow2-linux-fe06ccaad20257e3bd348b2df9e811fd92211a80.tar.xz
kernel-qcow2-linux-fe06ccaad20257e3bd348b2df9e811fd92211a80.zip
sparc64: Split syscall_trace() into two functions.
Christoph Hellwig noticed that having both entry and exit logic in one function no longer makes sense, and having seperate ones simplifies things a lot. Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'arch/sparc64/kernel/syscalls.S')
-rw-r--r--arch/sparc64/kernel/syscalls.S20
1 files changed, 8 insertions, 12 deletions
diff --git a/arch/sparc64/kernel/syscalls.S b/arch/sparc64/kernel/syscalls.S
index a2f24270ed8a..7a6786a71363 100644
--- a/arch/sparc64/kernel/syscalls.S
+++ b/arch/sparc64/kernel/syscalls.S
@@ -65,9 +65,8 @@ sys32_rt_sigreturn:
andcc %l5, (_TIF_SYSCALL_TRACE|_TIF_SECCOMP|_TIF_SYSCALL_AUDIT), %g0
be,pt %icc, rtrap
nop
- add %sp, PTREGS_OFF, %o0
- call syscall_trace
- mov 1, %o1
+ call syscall_trace_leave
+ add %sp, PTREGS_OFF, %o0
ba,pt %xcc, rtrap
nop
@@ -159,9 +158,8 @@ linux_sparc_ni_syscall:
or %l7, %lo(sys_ni_syscall), %l7
linux_syscall_trace32:
- add %sp, PTREGS_OFF, %o0
- call syscall_trace
- clr %o1
+ call syscall_trace_enter
+ add %sp, PTREGS_OFF, %o0
brnz,pn %o0, 3f
mov -ENOSYS, %o0
srl %i0, 0, %o0
@@ -172,9 +170,8 @@ linux_syscall_trace32:
srl %i3, 0, %o3
linux_syscall_trace:
- add %sp, PTREGS_OFF, %o0
- call syscall_trace
- clr %o1
+ call syscall_trace_enter
+ add %sp, PTREGS_OFF, %o0
brnz,pn %o0, 3f
mov -ENOSYS, %o0
mov %i0, %o0
@@ -275,9 +272,8 @@ ret_sys_call:
b,pt %xcc, rtrap
stx %l2, [%sp + PTREGS_OFF + PT_V9_TNPC]
linux_syscall_trace2:
- add %sp, PTREGS_OFF, %o0
- call syscall_trace
- mov 1, %o1
+ call syscall_trace_leave
+ add %sp, PTREGS_OFF, %o0
stx %l1, [%sp + PTREGS_OFF + PT_V9_TPC]
ba,pt %xcc, rtrap
stx %l2, [%sp + PTREGS_OFF + PT_V9_TNPC]