From: Ming Lei <ming.lei@redhat.com>
To: Christoph Hellwig <hch@lst.de>
Cc: axboe@kernel.dk, linux-block@vger.kernel.org, ming.lei@redhat.com
Subject: Re: [PATCH 2/2] Revert "ublk_drv: fix request queue leak"
Date: Wed, 20 Jul 2022 23:33:24 +0800 [thread overview]
Message-ID: <YtggRH5AJpKYmmwt@T590> (raw)
In-Reply-To: <20220720130845.GA11940@lst.de>
On Wed, Jul 20, 2022 at 03:08:45PM +0200, Christoph Hellwig wrote:
> On Wed, Jul 20, 2022 at 06:23:22PM +0800, Ming Lei wrote:
> > Even though alloc_disk and add_disk is paired here, GD_OWNS_QUEUE still
> > can't be set because request queue has to be workable for the new alloc/
> > added disk, just like scsi.
>
> How so? dm has totally normall disk/request_queue lifetimes. The only
> caveat is that the blk-mq bits of the queue are added after the initial
> non-mq disk allocation. There is no newly added disk after the disk
> and queue are torn down.
I meant that request queue is supposed to be low level stuff for implementing
disk function, and request queue hasn't to be released and re-allocated
after each disk whole lifetime(alloc disk, add disk, del_gendisk, release disk).
IMO, the limit is just from GD_OWNS_QUEUE which moves releasing some queue
resource into del_gendisk or disk release(as the fixes you posted), and this
way is fragile, frankly speaking. In theory, allocating queue and releasing
queue should be completely symmetrical, but GD_OWNS_QUEUE does change this way.
And GD_OWNS_QUEUE can't be set for SCSI, so the two modes have to be
supported by block layer.
Thanks,
Ming
next prev parent reply other threads:[~2022-07-20 15:33 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-07-18 6:29 [PATCH 1/2] block: call blk_mq_exit_queue from disk_release for never added disks Christoph Hellwig
2022-07-18 6:29 ` [PATCH 2/2] Revert "ublk_drv: fix request queue leak" Christoph Hellwig
2022-07-19 12:37 ` Ming Lei
2022-07-20 6:07 ` Christoph Hellwig
2022-07-20 7:47 ` Ming Lei
2022-07-20 9:00 ` Christoph Hellwig
2022-07-20 10:16 ` Ming Lei
2022-07-20 10:23 ` Ming Lei
2022-07-20 13:08 ` Christoph Hellwig
2022-07-20 15:33 ` Ming Lei [this message]
2022-07-21 5:12 ` Christoph Hellwig
2022-07-18 7:18 ` [PATCH 1/2] block: call blk_mq_exit_queue from disk_release for never added disks Ming Lei
2022-07-18 8:33 ` Ming Lei
2022-07-18 13:08 ` Christoph Hellwig
2022-07-18 13:07 ` Christoph Hellwig
2022-07-18 15:16 ` Ming Lei
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=YtggRH5AJpKYmmwt@T590 \
--to=ming.lei@redhat.com \
--cc=axboe@kernel.dk \
--cc=hch@lst.de \
--cc=linux-block@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.