Commit 92ab97ad authored by Linus Torvalds's avatar Linus Torvalds

Merge tag 'sh-for-5.9-part2' of git://git.libc.org/linux-sh

Pull arch/sh fixes from Rich Felker:
 "Fixes for build and function regression"

* tag 'sh-for-5.9-part2' of git://git.libc.org/linux-sh:
  sh: fix syscall tracing
  sh: remove spurious circular inclusion from asm/smp.h
parents 69828c47 b0cfc315
...@@ -8,7 +8,6 @@ ...@@ -8,7 +8,6 @@
#ifdef CONFIG_SMP #ifdef CONFIG_SMP
#include <linux/spinlock.h>
#include <linux/atomic.h> #include <linux/atomic.h>
#include <asm/current.h> #include <asm/current.h>
#include <asm/percpu.h> #include <asm/percpu.h>
......
...@@ -370,7 +370,6 @@ syscall_trace_entry: ...@@ -370,7 +370,6 @@ syscall_trace_entry:
nop nop
cmp/eq #-1, r0 cmp/eq #-1, r0
bt syscall_exit bt syscall_exit
mov.l r0, @(OFF_R0,r15) ! Save return value
! Reload R0-R4 from kernel stack, where the ! Reload R0-R4 from kernel stack, where the
! parent may have modified them using ! parent may have modified them using
! ptrace(POKEUSR). (Note that R0-R2 are ! ptrace(POKEUSR). (Note that R0-R2 are
......
...@@ -455,16 +455,11 @@ long arch_ptrace(struct task_struct *child, long request, ...@@ -455,16 +455,11 @@ long arch_ptrace(struct task_struct *child, long request,
asmlinkage long do_syscall_trace_enter(struct pt_regs *regs) asmlinkage long do_syscall_trace_enter(struct pt_regs *regs)
{ {
long ret = 0;
if (test_thread_flag(TIF_SYSCALL_TRACE) && if (test_thread_flag(TIF_SYSCALL_TRACE) &&
tracehook_report_syscall_entry(regs)) tracehook_report_syscall_entry(regs)) {
/* regs->regs[0] = -ENOSYS;
* Tracing decided this syscall should not happen. return -1;
* We'll return a bogus call number to get an ENOSYS }
* error, but leave the original number in regs->regs[0].
*/
ret = -1L;
if (secure_computing() == -1) if (secure_computing() == -1)
return -1; return -1;
...@@ -475,7 +470,7 @@ asmlinkage long do_syscall_trace_enter(struct pt_regs *regs) ...@@ -475,7 +470,7 @@ asmlinkage long do_syscall_trace_enter(struct pt_regs *regs)
audit_syscall_entry(regs->regs[3], regs->regs[4], regs->regs[5], audit_syscall_entry(regs->regs[3], regs->regs[4], regs->regs[5],
regs->regs[6], regs->regs[7]); regs->regs[6], regs->regs[7]);
return ret ?: regs->regs[0]; return 0;
} }
asmlinkage void do_syscall_trace_leave(struct pt_regs *regs) asmlinkage void do_syscall_trace_leave(struct pt_regs *regs)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment