]> git.baikalelectronics.ru Git - kernel.git/commitdiff
Merge branch 'exit-cleanups-for-v5.15' of git://git.kernel.org/pub/scm/linux/kernel...
authorLinus Torvalds <torvalds@linux-foundation.org>
Wed, 1 Sep 2021 21:52:05 +0000 (14:52 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Wed, 1 Sep 2021 21:52:05 +0000 (14:52 -0700)
Pull exit cleanups from Eric Biederman:
 "In preparation of doing something about PTRACE_EVENT_EXIT I have
  started cleaning up various pieces of code related to do_exit. Most of
  that code I did not manage to get tested and reviewed before the merge
  window opened but a handful of very useful cleanups are ready to be
  merged.

  The first change is simply the removal of the bdflush system call. The
  code has now been disabled long enough that even the oldest userspace
  working userspace setups anyone can find to test are fine with the
  bdflush system call being removed.

  Changing m68k fsp040_die to use force_sigsegv(SIGSEGV) instead of
  calling do_exit directly is interesting only in that it is nearly the
  most difficult of the incorrect uses of do_exit to remove.

  The change to the seccomp code to simply send a signal instead of
  calling do_coredump directly is a very nice little cleanup made
  possible by realizing the existing signal sending helpers were missing
  a little bit of functionality that is easy to provide"

* 'exit-cleanups-for-v5.15' of git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/user-namespace:
  signal/seccomp: Dump core when there is only one live thread
  signal/seccomp: Refactor seccomp signal and coredump generation
  signal/m68k: Use force_sigsegv(SIGSEGV) in fpsp040_die
  exit/bdflush: Remove the deprecated bdflush system call

1  2 
fs/buffer.c
include/linux/sched/signal.h
kernel/seccomp.c
kernel/signal.c

diff --cc fs/buffer.c
Simple merge
index 548986c7d233b658d7b9e7b92fb5151f0830fb73,e3c933facd86821fc4ed21684e7457924da7ce8f..e5f4ce622ee61a1be97874abf680bd0342483d69
@@@ -321,9 -329,7 +321,10 @@@ int force_sig_pkuerr(void __user *addr
  int force_sig_perf(void __user *addr, u32 type, u64 sig_data);
  
  int force_sig_ptrace_errno_trap(int errno, void __user *addr);
 +int force_sig_fault_trapno(int sig, int code, void __user *addr, int trapno);
 +int send_sig_fault_trapno(int sig, int code, void __user *addr, int trapno,
 +                      struct task_struct *t);
+ int force_sig_seccomp(int syscall, int reason, bool force_coredump);
  
  extern int send_sig_info(int, struct kernel_siginfo *, struct task_struct *);
  extern void force_sigsegv(int sig);
Simple merge
diff --cc kernel/signal.c
Simple merge