[PATCH V7 1/1] nvme: allow passthru cmd error logging
Chaitanya Kulkarni
chaitanyak at nvidia.com
Mon Dec 4 22:06:09 PST 2023
Sagi/Christoph,
On 9/19/23 09:02, alan.adamson at oracle.com wrote:
>
> On 9/12/23 4:39 AM, Sagi Grimberg wrote:
>>
>>>>> if (req->q->queuedata)
>>>>> req->timeout = NVME_IO_TIMEOUT;
>>>>> - else /* no queuedata implies admin queue */
>>>>> + else { /* no queuedata implies admin queue */
>>>>> req->timeout = NVME_ADMIN_TIMEOUT;
>>>>> + if (!nr->ctrl->passthru_err_log_enabled)
>>>>> + req->rq_flags |= RQF_QUIET;
>>>>> + }
>>>>> /* passthru commands should let the driver set the SGL flags */
>>>>> cmd->common.flags &= ~NVME_CMD_SGL_ALL;
>>>>> @@ -687,8 +720,7 @@ void nvme_init_request(struct request *req,
>>>>> struct nvme_command *cmd)
>>>>> if (req->mq_hctx->type == HCTX_TYPE_POLL)
>>>>> req->cmd_flags |= REQ_POLLED;
>>>>> nvme_clear_nvme_request(req);
>>>>> - req->rq_flags |= RQF_QUIET;
>>>> Isn't thisw now dropping the RQF_QUIET flag I/O commands that we
>>>> previously set? While we're at it, why do we only allow passthrough
>>>> error logging for admin commands anyway?
>>>
>>> While working through this, we decided that for IO commands
>>> (passthrough or not) error logging would always be enabled. For
>>> passthrough admin commands, error logging could be enabled or disabled.
>>
>> Why shouldn't it apply to both?
>
> Currently, we have /sys/class/nvme/nvme0/passthru_err_log_enabled that
> enables/disables logging for admin command only. Are you saying it
> should also enable/disable for IO commands across all namespaces or
> should there also be:
>
> /sys/class/nvme/nvme0/nvme0n1/passthru_err_log_enabled
>
> /sys/class/nvme/nvme0/nvme0n2/passthru_err_log_enabled
>
> .
>
> .
>
> Alan
>
>
>
Can we please have resolution on this patch so we can merge it ?
-ck
More information about the Linux-nvme
mailing list