Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

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

+5 -12
-1
arch/sh/include/asm/smp.h
··· 8 8 9 9 #ifdef CONFIG_SMP 10 10 11 - #include <linux/spinlock.h> 12 11 #include <linux/atomic.h> 13 12 #include <asm/current.h> 14 13 #include <asm/percpu.h>
-1
arch/sh/kernel/entry-common.S
··· 370 370 nop 371 371 cmp/eq #-1, r0 372 372 bt syscall_exit 373 - mov.l r0, @(OFF_R0,r15) ! Save return value 374 373 ! Reload R0-R4 from kernel stack, where the 375 374 ! parent may have modified them using 376 375 ! ptrace(POKEUSR). (Note that R0-R2 are
+5 -10
arch/sh/kernel/ptrace_32.c
··· 455 455 456 456 asmlinkage long do_syscall_trace_enter(struct pt_regs *regs) 457 457 { 458 - long ret = 0; 459 - 460 458 if (test_thread_flag(TIF_SYSCALL_TRACE) && 461 - tracehook_report_syscall_entry(regs)) 462 - /* 463 - * Tracing decided this syscall should not happen. 464 - * We'll return a bogus call number to get an ENOSYS 465 - * error, but leave the original number in regs->regs[0]. 466 - */ 467 - ret = -1L; 459 + tracehook_report_syscall_entry(regs)) { 460 + regs->regs[0] = -ENOSYS; 461 + return -1; 462 + } 468 463 469 464 if (secure_computing() == -1) 470 465 return -1; ··· 470 475 audit_syscall_entry(regs->regs[3], regs->regs[4], regs->regs[5], 471 476 regs->regs[6], regs->regs[7]); 472 477 473 - return ret ?: regs->regs[0]; 478 + return 0; 474 479 } 475 480 476 481 asmlinkage void do_syscall_trace_leave(struct pt_regs *regs)