diff options
author | David S. Miller <davem@davemloft.net> | 2005-07-10 22:29:45 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2005-07-10 22:29:45 -0400 |
commit | f7ceba360cce9af3fbc4e5a5b1bd40b570b7021c (patch) | |
tree | 1d138496048bbf5851cd60dee7acb912cffc6971 /arch/sparc64/kernel/entry.S | |
parent | 8d8a64796fdee4e20355c6c12c9cc630a2e7494d (diff) |
[SPARC64]: Add syscall auditing support.
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'arch/sparc64/kernel/entry.S')
-rw-r--r-- | arch/sparc64/kernel/entry.S | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/arch/sparc64/kernel/entry.S b/arch/sparc64/kernel/entry.S index 8b7ed760c50e..d781f10adc52 100644 --- a/arch/sparc64/kernel/entry.S +++ b/arch/sparc64/kernel/entry.S | |||
@@ -1552,7 +1552,7 @@ sys_ptrace: add %sp, PTREGS_OFF, %o0 | |||
1552 | nop | 1552 | nop |
1553 | .align 32 | 1553 | .align 32 |
1554 | 1: ldx [%curptr + TI_FLAGS], %l5 | 1554 | 1: ldx [%curptr + TI_FLAGS], %l5 |
1555 | andcc %l5, (_TIF_SYSCALL_TRACE|_TIF_SECCOMP), %g0 | 1555 | andcc %l5, (_TIF_SYSCALL_TRACE|_TIF_SECCOMP|_TIF_SYSCALL_AUDIT), %g0 |
1556 | be,pt %icc, rtrap | 1556 | be,pt %icc, rtrap |
1557 | clr %l6 | 1557 | clr %l6 |
1558 | add %sp, PTREGS_OFF, %o0 | 1558 | add %sp, PTREGS_OFF, %o0 |
@@ -1679,7 +1679,7 @@ linux_sparc_syscall32: | |||
1679 | 1679 | ||
1680 | srl %i5, 0, %o5 ! IEU1 | 1680 | srl %i5, 0, %o5 ! IEU1 |
1681 | srl %i2, 0, %o2 ! IEU0 Group | 1681 | srl %i2, 0, %o2 ! IEU0 Group |
1682 | andcc %l0, (_TIF_SYSCALL_TRACE|_TIF_SECCOMP), %g0 ! IEU0 Group | 1682 | andcc %l0, (_TIF_SYSCALL_TRACE|_TIF_SECCOMP|_TIF_SYSCALL_AUDIT), %g0 |
1683 | bne,pn %icc, linux_syscall_trace32 ! CTI | 1683 | bne,pn %icc, linux_syscall_trace32 ! CTI |
1684 | mov %i0, %l5 ! IEU1 | 1684 | mov %i0, %l5 ! IEU1 |
1685 | call %l7 ! CTI Group brk forced | 1685 | call %l7 ! CTI Group brk forced |
@@ -1702,7 +1702,7 @@ linux_sparc_syscall: | |||
1702 | 1702 | ||
1703 | mov %i3, %o3 ! IEU1 | 1703 | mov %i3, %o3 ! IEU1 |
1704 | mov %i4, %o4 ! IEU0 Group | 1704 | mov %i4, %o4 ! IEU0 Group |
1705 | andcc %l0, (_TIF_SYSCALL_TRACE|_TIF_SECCOMP), %g0 ! IEU1 Group+1 bubble | 1705 | andcc %l0, (_TIF_SYSCALL_TRACE|_TIF_SECCOMP|_TIF_SYSCALL_AUDIT), %g0 |
1706 | bne,pn %icc, linux_syscall_trace ! CTI Group | 1706 | bne,pn %icc, linux_syscall_trace ! CTI Group |
1707 | mov %i0, %l5 ! IEU0 | 1707 | mov %i0, %l5 ! IEU0 |
1708 | 2: call %l7 ! CTI Group brk forced | 1708 | 2: call %l7 ! CTI Group brk forced |
@@ -1730,7 +1730,7 @@ ret_sys_call: | |||
1730 | 1: | 1730 | 1: |
1731 | cmp %o0, -ERESTART_RESTARTBLOCK | 1731 | cmp %o0, -ERESTART_RESTARTBLOCK |
1732 | bgeu,pn %xcc, 1f | 1732 | bgeu,pn %xcc, 1f |
1733 | andcc %l0, (_TIF_SYSCALL_TRACE|_TIF_SECCOMP), %l6 | 1733 | andcc %l0, (_TIF_SYSCALL_TRACE|_TIF_SECCOMP|_TIF_SYSCALL_AUDIT), %l6 |
1734 | 80: | 1734 | 80: |
1735 | /* System call success, clear Carry condition code. */ | 1735 | /* System call success, clear Carry condition code. */ |
1736 | andn %g3, %g2, %g3 | 1736 | andn %g3, %g2, %g3 |
@@ -1745,7 +1745,7 @@ ret_sys_call: | |||
1745 | /* System call failure, set Carry condition code. | 1745 | /* System call failure, set Carry condition code. |
1746 | * Also, get abs(errno) to return to the process. | 1746 | * Also, get abs(errno) to return to the process. |
1747 | */ | 1747 | */ |
1748 | andcc %l0, (_TIF_SYSCALL_TRACE|_TIF_SECCOMP), %l6 | 1748 | andcc %l0, (_TIF_SYSCALL_TRACE|_TIF_SECCOMP|_TIF_SYSCALL_AUDIT), %l6 |
1749 | sub %g0, %o0, %o0 | 1749 | sub %g0, %o0, %o0 |
1750 | or %g3, %g2, %g3 | 1750 | or %g3, %g2, %g3 |
1751 | stx %o0, [%sp + PTREGS_OFF + PT_V9_I0] | 1751 | stx %o0, [%sp + PTREGS_OFF + PT_V9_I0] |