signal: Allow POSIX timer signals to be dropped
authorThomas Gleixner <tglx@linutronix.de>
Tue, 1 Oct 2024 08:42:04 +0000 (10:42 +0200)
committerThomas Gleixner <tglx@linutronix.de>
Tue, 29 Oct 2024 10:43:19 +0000 (11:43 +0100)
commitc775ea28d4e23f5e58b6953645ef90c1b27a8e83
treef580b74b9254faf6dfda1e266ba54a81cfd5b7c9
parent4febce44cfebcb490b196d5d10ae9f403ca4c956
signal: Allow POSIX timer signals to be dropped

In case that a timer was reprogrammed or deleted an already pending signal
is obsolete. Right now such signals are kept around and eventually
delivered. While POSIX is blury about this:

 - "The effect of disarming or resetting a timer with pending expiration
    notifications is unspecified."

 - "The disposition of pending signals for the deleted timer is
    unspecified."

it is reasonable in both cases to expect that pending signals are discarded
as they have no meaning anymore.

Prepare the signal code to allow dropping posix timer signals.

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Reviewed-by: Frederic Weisbecker <frederic@kernel.org>
Acked-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Link: https://lore.kernel.org/all/20241001083835.494416923@linutronix.de
include/linux/posix-timers.h
kernel/signal.c
kernel/time/posix-timers.c