[bug report]BUG: workqueue leaked atomic, lock or RCU: kworker/u67:3[365] observed from v6.15-rc7

Christoph Hellwig hch at lst.de
Sun Jun 1 22:52:58 PDT 2025


On Thu, May 29, 2025 at 08:41:36PM +0800, Yi Zhang wrote:
> Hi
> 
> My regression test found this issue from v6.15-rc7, please help check
> it and let me know if you need any infor/test for it, thanks.

Hi Zi,

The new code seems to be missing a queue_limits_cancel_update,
the patch below fies it.  But what kind of devices is this?
PCIe muti-controller subsystems aren't that command, and this
looks like a grave bug, combined with the I/O page fault that
looks really odd.

diff --git a/drivers/nvme/host/core.c b/drivers/nvme/host/core.c
index f69a232a000a..4bb3c68b3451 100644
--- a/drivers/nvme/host/core.c
+++ b/drivers/nvme/host/core.c
@@ -2388,6 +2388,7 @@ static int nvme_update_ns_info_block(struct nvme_ns *ns,
 	 * atomic write capabilities.
 	 */
 	if (lim.atomic_write_hw_max > ns->ctrl->subsys->atomic_bs) {
+		queue_limits_cancel_update(ns->disk->queue);
 		blk_mq_unfreeze_queue(ns->disk->queue, memflags);
 		ret = -ENXIO;
 		goto out;



More information about the Linux-nvme mailing list