Re: WARNING in delayed_work_timer_fn
From: Tejun Heo
Date: Mon Jun 29 2026 - 14:53:14 EST
Hello,
> workqueue: cannot queue hci_conn_timeout on wq hci4
> WARNING: kernel/workqueue.c:2271 at __queue_work+0xd2b/0xff0
conn->disc_work (hci_conn_timeout) is a delayed work item queued on
hdev->workqueue. Its timer expires after the workqueue has started being
torn down, so __queue_work() refuses to queue it and warns.
Arguably this is a shortcoming in workqueue, but as it stands a delayed work
item has to be canceled explicitly before the workqueue it's queued on is
destroyed. disc_work needs to be canceled on the Bluetooth side before
hdev->workqueue is torn down.
Thanks.
--
tejun