Thread (25 messages) 25 messages, 3 authors, 2022-02-26

Re: [PATCH 08/12] block: don't remove hctx debugfs dir from blk_mq_exit_queue

From: Ming Lei <hidden>
Date: 2022-02-23 06:41:44
Also in: linux-scsi

On Tue, Feb 22, 2022 at 08:06:31PM -0800, Bart Van Assche wrote:
On 2/22/22 06:14, Christoph Hellwig wrote:
quoted
From: Ming Lei <redacted>

The queue's top debugfs dir is removed from blk_release_queue(), so all
hctx's debugfs dirs are removed from there. Given blk_mq_exit_queue()
is only called from blk_cleanup_queue(), it isn't necessary to remove
hctx debugfs from blk_mq_exit_queue().

So remove it from blk_mq_exit_queue().

Signed-off-by: Ming Lei <redacted>
Signed-off-by: Christoph Hellwig <hch@lst.de>
---
  block/blk-mq.c | 1 -
  1 file changed, 1 deletion(-)
diff --git a/block/blk-mq.c b/block/blk-mq.c
index 63e2d3fd60946..540c8da30da72 100644
--- a/block/blk-mq.c
+++ b/block/blk-mq.c
@@ -3425,7 +3425,6 @@ static void blk_mq_exit_hw_queues(struct request_queue *q,
  	queue_for_each_hw_ctx(q, hctx, i) {
  		if (i == nr_queue)
  			break;
-		blk_mq_debugfs_unregister_hctx(hctx);
  		blk_mq_exit_hctx(q, set, hctx, i);
  	}
  }
What will happen if a new queue with the same name as a removed queue is
created before blk_release_queue() for the removed queue has finished? Will
that cause registration of debugfs attributes for the newly created queue to
fail?
That may happen, but not related with this patch, since this patch just
delays removing of hctx's debug entry. And q->debugfs_dir is removed
from blk_release_queue().

So far, request queue doesn't has name, and just uses the disk's name
for creating debugfs entry. The trouble should have been there for long
time.


Thanks,
Ming
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help