[PATCH] KEYS: dispatch key_gc_work to system_wq.

Jarkko Sakkinen jarkko at kernel.org
Mon Oct 26 03:15:02 UTC 2026


On Mon, Oct 26, 2026 at 05:12:18AM +0200, Jarkko Sakkinen wrote:
> schedule_work() dispatches key_gc_work on the per-CPU system_wq, which can
> choke the queue:
> 
> BUG: workqueue lockup - pool cpus=0 node=0 flags=0x2 nice=0 stuck for 30s!
> 
> Queue the work on system_dfl_long_wq instead, which is an unbounded wq for
> long-running tasks i.e., it has the WQ_BOUND flag set and thus cannot hog
> the CPU core.
> 
> Link: https://lore.kernel.org/keyrings/20261024042944.52493-1-hackerowskiy@gmail.com/
> Reported-by: syzbot+c15de43f1e7fffbb7b9b at syzkaller.appspotmail.com
> Closes: https://lore.kernel.org/all/6ad35b60.7952420f.283480.0360.GAE@google.com/T/
> Signed-off-by: Jarkko Sakkinen <jarkko at kernel.org>

Because old code has weird assumptions regardless what code it is, if it
has been for a while using one threading model, so I'm mainly concerned
are there "pinned to a CPU" assumptions in the keyring GC?

Br, Jarkko




More information about the Linux-security-module-archive mailing list