Skip to content

Commit

Permalink
[POWERPC] Fix PPC32 SECCOMP, unexport do_syscall_trace_{enter,leave}
Browse files Browse the repository at this point in the history
The secure_computing() call which automatically aborts a process if it
tries to execute a syscall it shouldn't is much more useful if we
actually do it _before_ the syscall, rather than afterwards. PPC64 got
this right, but the original incorrect behaviour inherited from arch/ppc
was preserved by ifdefs. Make it the same on PPC32 too.

Also, I see no need to export do_syscall_trace_{leave,enter} on ppc32 --
they were only exported because the old do_syscall_trace() (which they
replaced) used to be.

Signed-off-by: David Woodhouse <dwmw2@infradead.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
  • Loading branch information
David Woodhouse authored and Paul Mackerras committed Sep 26, 2006
1 parent 4b9c876 commit 94983cb
Showing 1 changed file with 0 additions and 11 deletions.
11 changes: 0 additions & 11 deletions arch/powerpc/kernel/ptrace.c
Original file line number Diff line number Diff line change
Expand Up @@ -526,9 +526,7 @@ static void do_syscall_trace(void)

void do_syscall_trace_enter(struct pt_regs *regs)
{
#ifdef CONFIG_PPC64
secure_computing(regs->gpr[0]);
#endif

if (test_thread_flag(TIF_SYSCALL_TRACE)
&& (current->ptrace & PT_PTRACED))
Expand All @@ -548,10 +546,6 @@ void do_syscall_trace_enter(struct pt_regs *regs)

void do_syscall_trace_leave(struct pt_regs *regs)
{
#ifdef CONFIG_PPC32
secure_computing(regs->gpr[0]);
#endif

if (unlikely(current->audit_context))
audit_syscall_exit((regs->ccr&0x10000000)?AUDITSC_FAILURE:AUDITSC_SUCCESS,
regs->result);
Expand All @@ -561,8 +555,3 @@ void do_syscall_trace_leave(struct pt_regs *regs)
&& (current->ptrace & PT_PTRACED))
do_syscall_trace();
}

#ifdef CONFIG_PPC32
EXPORT_SYMBOL(do_syscall_trace_enter);
EXPORT_SYMBOL(do_syscall_trace_leave);
#endif

0 comments on commit 94983cb

Please sign in to comment.