Files
linux/kernel
Benjamin Segall f99c5bb396 posix-timers: Invoke cond_resched() during exit_itimers()
exit_itimers() loops through every timer in the process to delete it.  This
requires taking the system-wide hash_lock for each of these timers, and
contends with other processes trying to create or delete timers.

When a process creates hundreds of thousands of timers, and then exits
while other processes contend with it, this can trigger softlockups on
CONFIG_PREEMPT=n.

Add a cond_resched() invocation into the loop to allow the system to make
progress.

Signed-off-by: Ben Segall <bsegall@google.com>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Link: https://lore.kernel.org/all/xm2634gg2n23.fsf@google.com
2025-02-18 10:12:49 +01:00
..
2025-01-25 08:22:26 +00:00
2024-09-03 21:15:26 -07:00
2024-11-03 01:28:06 -05:00
2025-01-19 12:44:28 +08:00
2024-09-27 08:18:43 -07:00
2024-11-03 01:28:06 -05:00
2024-05-30 15:31:38 -07:00