linux/arch/xtensa/kernel
Linus Torvalds 5147da902e Merge branch 'exit-cleanups-for-v5.16' of git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/user-namespace
Pull exit cleanups from Eric Biederman:
 "While looking at some issues related to the exit path in the kernel I
  found several instances where the code is not using the existing
  abstractions properly.

  This set of changes introduces force_fatal_sig a way of sending a
  signal and not allowing it to be caught, and corrects the misuse of
  the existing abstractions that I found.

  A lot of the misuse of the existing abstractions are silly things such
  as doing something after calling a no return function, rolling BUG by
  hand, doing more work than necessary to terminate a kernel thread, or
  calling do_exit(SIGKILL) instead of calling force_sig(SIGKILL).

  In the review a deficiency in force_fatal_sig and force_sig_seccomp
  where ptrace or sigaction could prevent the delivery of the signal was
  found. I have added a change that adds SA_IMMUTABLE to change that
  makes it impossible to interrupt the delivery of those signals, and
  allows backporting to fix force_sig_seccomp

  And Arnd found an issue where a function passed to kthread_run had the
  wrong prototype, and after my cleanup was failing to build."

* 'exit-cleanups-for-v5.16' of git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/user-namespace: (23 commits)
  soc: ti: fix wkup_m3_rproc_boot_thread return type
  signal: Add SA_IMMUTABLE to ensure forced siganls do not get changed
  signal: Replace force_sigsegv(SIGSEGV) with force_fatal_sig(SIGSEGV)
  exit/r8188eu: Replace the macro thread_exit with a simple return 0
  exit/rtl8712: Replace the macro thread_exit with a simple return 0
  exit/rtl8723bs: Replace the macro thread_exit with a simple return 0
  signal/x86: In emulate_vsyscall force a signal instead of calling do_exit
  signal/sparc32: In setup_rt_frame and setup_fram use force_fatal_sig
  signal/sparc32: Exit with a fatal signal when try_to_clear_window_buffer fails
  exit/syscall_user_dispatch: Send ordinary signals on failure
  signal: Implement force_fatal_sig
  exit/kthread: Have kernel threads return instead of calling do_exit
  signal/s390: Use force_sigsegv in default_trap_handler
  signal/vm86_32: Properly send SIGSEGV when the vm86 state cannot be saved.
  signal/vm86_32: Replace open coded BUG_ON with an actual BUG_ON
  signal/sparc: In setup_tsb_params convert open coded BUG into BUG
  signal/powerpc: On swapcontext failure force SIGSEGV
  signal/sh: Use force_sig(SIGKILL) instead of do_group_exit(SIGKILL)
  signal/mips: Update (_save|_restore)_fp_context to fail with -EFAULT
  signal/sparc32: Remove unreachable do_exit in do_sparc_fault
  ...
2021-11-10 16:15:54 -08:00
..
syscalls Merge branch 'akpm' (patches from Andrew) 2021-09-03 10:08:28 -07:00
.gitignore .gitignore: add SPDX License Identifier 2020-03-25 11:50:48 +01:00
align.S xtensa: use register window specific opcodes only when present 2021-10-18 22:19:35 -07:00
asm-offsets.c xtensa: add missing exclusive access state management 2020-07-31 14:15:57 -07:00
coprocessor.S xtensa: move coprocessor_flush to the .text section 2021-03-08 20:15:09 -08:00
entry.S xtensa: only build windowed register support code when needed 2021-10-18 22:19:35 -07:00
head.S xtensa: use register window specific opcodes only when present 2021-10-18 22:19:35 -07:00
hw_breakpoint.c xtensa: replace variant/core.h with asm/core.h 2019-05-06 17:48:55 -07:00
irq.c xtensa: call irqchip_init only when CONFIG_USE_OF is selected 2021-09-27 09:46:33 -07:00
jump_label.c jump_label: move 'asm goto' support test to Kconfig 2019-01-06 09:46:51 +09:00
Makefile xtensa: use the generic uncached segment support 2019-11-11 10:52:18 +01:00
mcount.S xtensa: implement call0 ABI support in assembly 2021-10-18 22:19:35 -07:00
module.c xtensa: clean up custom-controlled debug output 2017-12-16 22:37:08 -08:00
mxhead.S xtensa: drop unused sections and remapped reset handlers 2015-11-03 17:19:39 +03:00
pci-dma.c dma-mapping: merge <linux/dma-noncoherent.h> into <linux/dma-map-ops.h> 2020-10-06 07:07:06 +02:00
pci.c xtensa: fix warning comparing pointer to 0 2021-04-04 15:39:02 -07:00
perf_event.c xtensa: fix xtensa_pmu_setup prototype 2020-07-31 14:09:12 -07:00
platform.c xtensa: drop empty platform_* functions from platforms 2020-01-31 12:17:28 -08:00
process.c Xtensa updates for v5.16 2021-11-06 14:54:03 -07:00
ptrace.c Merge branch 'work.regset' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs 2020-08-07 09:29:25 -07:00
s32c1i_selftest.c xtensa: move S32C1I self-test to a separate file 2016-11-16 15:08:28 -08:00
setup.c xtensa: move section symbols to asm/sections.h 2021-10-18 22:19:35 -07:00
signal.c xtensa: only build windowed register support code when needed 2021-10-18 22:19:35 -07:00
smp.c sched/core: Initialize the idle task with preemption disabled 2021-05-12 13:01:45 +02:00
stacktrace.c arch: xtensa: Remove CONFIG_OPROFILE support 2021-01-29 10:05:51 +05:30
syscall.c xtensa: syscalls: switch to generic syscalltbl.sh 2021-04-04 15:39:03 -07:00
time.c xtensa: Replace <linux/clk-provider.h> by <linux/of_clk.h> 2020-12-07 14:01:02 -08:00
traps.c Merge branch 'exit-cleanups-for-v5.16' of git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/user-namespace 2021-11-10 16:15:54 -08:00
vectors.S xtensa: only build windowed register support code when needed 2021-10-18 22:19:35 -07:00
vmlinux.lds.S xtensa: only build windowed register support code when needed 2021-10-18 22:19:35 -07:00
xtensa_ksyms.c asm-generic: reverse GENERIC_{STRNCPY_FROM,STRNLEN}_USER symbols 2021-07-30 10:30:21 +02:00