Merge tag 'ptrace-cleanups-for-v5.18' of git://git.kernel.org/pub/scm/linux/kernel...
authorLinus Torvalds <torvalds@linux-foundation.org>
Tue, 29 Mar 2022 00:29:53 +0000 (17:29 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Tue, 29 Mar 2022 00:29:53 +0000 (17:29 -0700)
commit1930a6e739c4b4a654a69164dbe39e554d228915
tree54a3897fed1be7b0404d9be6fb5bab1c5a97931e
parent0a815d0135f1be20c1a04d07f7573a26272ef846
parentdcbc65aac28360df5f5a3b613043ccc0e81da3cf
Merge tag 'ptrace-cleanups-for-v5.18' of git://git./linux/kernel/git/ebiederm/user-namespace

Pull ptrace cleanups from Eric Biederman:
 "This set of changes removes tracehook.h, moves modification of all of
  the ptrace fields inside of siglock to remove races, adds a missing
  permission check to ptrace.c

  The removal of tracehook.h is quite significant as it has been a major
  source of confusion in recent years. Much of that confusion was around
  task_work and TIF_NOTIFY_SIGNAL (which I have now decoupled making the
  semantics clearer).

  For people who don't know tracehook.h is a vestiage of an attempt to
  implement uprobes like functionality that was never fully merged, and
  was later superseeded by uprobes when uprobes was merged. For many
  years now we have been removing what tracehook functionaly a little
  bit at a time. To the point where anything left in tracehook.h was
  some weird strange thing that was difficult to understand"

* tag 'ptrace-cleanups-for-v5.18' of git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/user-namespace:
  ptrace: Remove duplicated include in ptrace.c
  ptrace: Check PTRACE_O_SUSPEND_SECCOMP permission on PTRACE_SEIZE
  ptrace: Return the signal to continue with from ptrace_stop
  ptrace: Move setting/clearing ptrace_message into ptrace_stop
  tracehook: Remove tracehook.h
  resume_user_mode: Move to resume_user_mode.h
  resume_user_mode: Remove #ifdef TIF_NOTIFY_RESUME in set_notify_resume
  signal: Move set_notify_signal and clear_notify_signal into sched/signal.h
  task_work: Decouple TIF_NOTIFY_SIGNAL and task_work
  task_work: Call tracehook_notify_signal from get_signal on all architectures
  task_work: Introduce task_work_pending
  task_work: Remove unnecessary include from posix_timers.h
  ptrace: Remove tracehook_signal_handler
  ptrace: Remove arch_syscall_{enter,exit}_tracehook
  ptrace: Create ptrace_report_syscall_{entry,exit} in ptrace.h
  ptrace/arm: Rename tracehook_report_syscall report_syscall
  ptrace: Move ptrace_report_syscall into ptrace.h
32 files changed:
MAINTAINERS
arch/Kconfig
arch/arm64/kernel/signal.c
arch/csky/kernel/signal.c
arch/hexagon/kernel/process.c
arch/microblaze/kernel/signal.c
arch/mips/kernel/signal.c
arch/nios2/kernel/signal.c
arch/parisc/kernel/signal.c
arch/powerpc/kernel/ptrace/ptrace.c
arch/riscv/kernel/signal.c
arch/s390/kernel/ptrace.c
arch/s390/kernel/signal.c
arch/sparc/kernel/signal_32.c
arch/x86/kernel/ptrace.c
block/blk-cgroup.c
fs/coredump.c
fs/exec.c
fs/io-wq.c
fs/io_uring.c
fs/proc/base.c
include/linux/entry-common.h
include/linux/posix-timers.h
kernel/entry/common.c
kernel/exit.c
kernel/livepatch/transition.c
kernel/sched/fair.c
kernel/seccomp.c
kernel/signal.c
kernel/time/posix-cpu-timers.c
mm/memcontrol.c
security/selinux/hooks.c