[PATCH 01/13] nvme: add common helpers to allocate and free tagsets
Christoph Hellwig
hch at lst.de
Wed Sep 21 22:45:49 PDT 2022
On Wed, Sep 21, 2022 at 11:37:08AM +0800, Chao Leng wrote:
>> + ctrl->connect_q = blk_mq_init_queue(set);
>> + if (IS_ERR(ctrl->connect_q)) {
>> + ret = PTR_ERR(ctrl->connect_q);
>> + goto out_free_tag_set;
>> + }
> Maybe we should move the connect_q related code to nvme_alloc_admin_tag_set.
> Thus we don't need to set NVMF_RESERVED_TAGS for tagset,
> if there are large amount of ns queues, it will save resources.
> At the same time, it will simplify tagset-based implementation.
> According to the behavior logic, connect_q is a management resource.
> However, connect_q use the I/O tagset.
> As a result, it is difficult to process some logic based on tagset.
The fabrics connect command needs to be sent on each of the I/O
queues in addition to the admin queue, which means the admin tag_set
can't be used.
More information about the Linux-nvme
mailing list