Re: [PATCH v2] blk-mq: Fix blk_mq_tagset_busy_iter() for shared tags

From: John Garry
Date: Thu Oct 21 2021 - 04:08:33 EST


On 18/10/2021 19:49, Kashyap Desai wrote:
-----Original Message-----
From: John Garry [mailto:john.garry@xxxxxxxxxx]
Sent: Monday, October 18, 2021 3:11 PM
To:axboe@xxxxxxxxx
Cc:ming.lei@xxxxxxxxxx;linux-block@xxxxxxxxxxxxxxx; linux-
kernel@xxxxxxxxxxxxxxx;kashyap.desai@xxxxxxxxxxxx;hare@xxxxxxx; John
Garry<john.garry@xxxxxxxxxx>
Subject: [PATCH v2] blk-mq: Fix blk_mq_tagset_busy_iter() for shared
tags
Since it is now possible for a tagset to share a single set of tags, the
iter
function should not re-iter the tags for the count of #hw queues in that
case.
Rather it should just iter once.

Fixes: e0fdf846c7bb ("blk-mq: Use shared tags for shared sbitmap
support")
Reported-by: Kashyap Desai<kashyap.desai@xxxxxxxxxxxx>
Signed-off-by: John Garry<john.garry@xxxxxxxxxx>
Reviewed-by: Ming Lei<ming.lei@xxxxxxxxxx>
---
Diff to v1:
- Add Ming's RB tag
Now I noticed proper host_busy in my test. Still CPU hogging is not
resolved, but issue addressed by this patch is resolved.

Tested-by: Kashyap Desai<kashyap.desai@xxxxxxxxxxxx>

Hi Jens,

Can you kindly consider picking up this patch?

I'm still waiting for feedback from Kashyap on whether we should optimize the other iter functions for shared tags, but this one is a fix.

Thanks!