|
|
Log in / Subscribe / Register

Short circuit delivery for coredump signals

From:  "Eric W. Biederman" <ebiederm-AT-xmission.com>
To:  Andrew Morton <akpm-AT-linux-foundation.org>
Subject:  [PATCH 0/11] Short circuit delivery for coredump signals
Date:  Fri, 26 Jun 2026 11:52:43 -0500
Message-ID:  <87o6gx9rc4.fsf@email.froward.int.ebiederm.org>
Cc:  Andy Lutomirski <luto-AT-kernel.org>, Kees Cook <kees-AT-kernel.org>, Kusaram Devineni <kusaram-AT-devineni.in>, Peter Zijlstra <peterz-AT-infradead.org>, Thomas Gleixner <tglx-AT-kernel.org>, Will Drewry <wad-AT-chromium.org>, linux-kernel-AT-vger.kernel.org, Oleg Nesterov <oleg-AT-redhat.com>
Archive-link:  Article


Oleg's recent patchset tweaking how force_sig_info works has inspired me
to finally push through and update the signal handling to have proper
short circuit deliver for coredump signals.  Everything is just simpler
when coredumps are not such a large special case.

What makes this tricky is coredumps have had their own process
shoot-down logic similar to but separate and different from everything
else in the kernel.  The bulk of this set of changes is merging the
process shoot-down logic that is used for signals and the logic for
coredumps.  So the same process shoot-down logic can be shared.

With the shoot-down logic sorted the rest is quite straight forward.

Who should pick up these changes?  Historically I would put it in my own
tree but unfortunately I just have a little bit of time here and there,
and I can't predict when I will have time to work on things.

Eric W. Biederman (11):
      signal: Compute the exit_code in get_signal
      signal: In get_signal call do_exit when it is unnecessary to shoot down threads
      signal: Bring down all threads when handling a non-coredump fatal signal
      signal: Move stopping for the coredump from do_exit into get_signal
      signal: Move audit_core_dumps from do_coredump into get_signal
      coredump: In zap_threads complete startup if there is no need to wait
      signal: Use the thread killing in get_signal for coredumps
      exit: Make do_group_exit static
      signal: Dequeue fatal signals
      signal: Short circuit deliver coredump signals
      signal: Remove SA_IMMUTABLE

 fs/coredump.c                          | 161 +++++++++++++++++----------------
 include/linux/coredump.h               |   4 +
 include/linux/sched/signal.h           |   2 +
 include/linux/sched/task.h             |   1 -
 include/linux/signal_types.h           |   3 -
 include/uapi/asm-generic/signal-defs.h |   1 -
 kernel/exit.c                          |  41 ++-------
 kernel/signal.c                        | 119 +++++++++++++++---------
 mm/oom_kill.c                          |   2 +-
 9 files changed, 171 insertions(+), 163 deletions(-)




Copyright © 2026, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds