Thread (58 messages) 58 messages, 10 authors, 2022-09-06

Re: stalling IO regression since linux 5.12, through 5.18

From: Chris Murphy <hidden>
Date: 2022-08-19 19:21:37
Also in: linux-block, linux-btrfs, lkml


On Thu, Aug 18, 2022, at 1:24 AM, Ming Lei wrote:
quoted hunk ↗ jump to hunk
On Thu, Aug 18, 2022 at 12:27:04AM -0400, Chris Murphy wrote:
quoted

On Thu, Aug 18, 2022, at 12:18 AM, Chris Murphy wrote:
quoted
On Thu, Aug 18, 2022, at 12:12 AM, Chris Murphy wrote:
quoted
On Wed, Aug 17, 2022, at 11:41 PM, Ming Lei wrote:
quoted
OK, can you post the blk-mq debugfs log after you trigger it on v5.17?
Same boot, 3rd log. But the load is above 300 so I kinda need to sysrq+b soon.

https://drive.google.com/file/d/1375H558kqPTdng439rvG6LuXXWPXLToo/view?usp=sharing
Also please test the following one too:

diff --git a/block/blk-mq.c b/block/blk-mq.c
index 5ee62b95f3e5..d01c64be08e2 100644
--- a/block/blk-mq.c
+++ b/block/blk-mq.c
@@ -1991,7 +1991,8 @@ bool blk_mq_dispatch_rq_list(struct blk_mq_hw_ctx 
*hctx, struct list_head *list,
 		if (!needs_restart ||
 		    (no_tag && list_empty_careful(&hctx->dispatch_wait.entry)))
 			blk_mq_run_hw_queue(hctx, true);
-		else if (needs_restart && needs_resource)
+		else if (needs_restart && (needs_resource ||
+					blk_mq_is_shared_tags(hctx->flags)))
 			blk_mq_delay_run_hw_queue(hctx, BLK_MQ_RESOURCE_DELAY);

 		blk_mq_update_dispatch_busy(hctx, true);

With just this patch on top of 5.17.0, it still hangs. I've captured block debugfs log:
https://drive.google.com/file/d/1ic4YHxoL9RrCdy_5FNdGfh_q_J3d_Ft0/view?usp=sharing



-- 
Chris Murphy
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help