[PATCH v2 0/2] fix task_work interation with freezing

From: Pavel Begunkov
Date: Tue Jul 09 2024 - 10:27:29 EST


It's reported [1] that a task_work queued at a wrong time can prevent
freezing and make the tasks to spin in get_signal() taking 100%
of CPU. Patch 1 is a preparation. Patch 2 addresses the issue.

[1] https://github.com/systemd/systemd/issues/33626

v2: move task_work_run() into do_freezer_trap()
change Fixes tag

Pavel Begunkov (2):
io_uring/io-wq: limit retrying worker initialisation
kernel: rerun task_work while freezing in get_signal()

io_uring/io-wq.c | 10 +++++++---
kernel/signal.c | 8 ++++++++
2 files changed, 15 insertions(+), 3 deletions(-)

--
2.44.0