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-18 18:53:09
Also in: linux-block, linux-btrfs, lkml


On Thu, Aug 18, 2022, at 1:15 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
Please test the following patch and see if it makes a difference:
diff --git a/block/blk-mq-sched.c b/block/blk-mq-sched.c
index a4f7c101b53b..8e8d77e79dd6 100644
--- a/block/blk-mq-sched.c
+++ b/block/blk-mq-sched.c
@@ -44,7 +44,10 @@ void __blk_mq_sched_restart(struct blk_mq_hw_ctx *hctx)
 	 */
 	smp_mb();

-	blk_mq_run_hw_queue(hctx, true);
+	if (blk_mq_is_shared_tags(hctx->flags))
+		blk_mq_run_hw_queues(hctx->queue, true);
+	else
+		blk_mq_run_hw_queue(hctx, true);
 }

 static int sched_rq_cmp(void *priv, const struct list_head *a,

I still get a stall. By the time I noticed it, I can't run any new commands (they just hang) so I had to sysrq+b. Let me know if I should rerun the test in order to capture block debug log.


-- 
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