[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