[PATCH v1 1/1] nvme-core: exclude ioccsz/iorcsz checks for admin ctrlr
Keith Busch
kbusch at kernel.org
Fri Sep 5 14:49:23 PDT 2025
On Fri, Sep 05, 2025 at 02:10:01PM -0700, Kamaljit Singh wrote:
> An administrative controller does not support I/O queues, hence it
> should exclude existing checks for IOCCSZ/IORCSZ.
>
> Signed-off-by: Kamaljit Singh <kamaljit.singh at opensource.wdc.com>
> ---
> drivers/nvme/host/core.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/nvme/host/core.c b/drivers/nvme/host/core.c
> index d67545bd7abb..ac72bae800a9 100644
> --- a/drivers/nvme/host/core.c
> +++ b/drivers/nvme/host/core.c
> @@ -3491,14 +3491,14 @@ static int nvme_check_ctrl_fabric_info(struct nvme_ctrl *ctrl, struct nvme_id_ct
> return -EINVAL;
> }
>
> - if (!nvme_discovery_ctrl(ctrl) && ctrl->ioccsz < 4) {
> + if (!nvmf_discovery_ctrl(ctrl) && !nvme_admin_ctrl(ctrl) && ctrl->ioccsz < 4) {
> dev_err(ctrl->device,
> "I/O queue command capsule supported size %d < 4\n",
> ctrl->ioccsz);
> return -EINVAL;
> }
>
> - if (!nvme_discovery_ctrl(ctrl) && ctrl->iorcsz < 1) {
> + if (!nvmf_discovery_ctrl(ctrl) && !nvme_admin_ctrl(ctrl) && ctrl->iorcsz < 1) {
Excessive line length over 80 chars.
Perhaps, though, we should have a helper to indicate IO controllers
rather than chaining conditions for everything that isn't one.
More information about the Linux-nvme
mailing list