[PATCH 1/2] nvmet: fix return value check in auth send

Hannes Reinecke hare at suse.de
Mon Jul 18 23:51:10 PDT 2022


On 7/19/22 01:12, Chaitanya Kulkarni wrote:
> nvmet_setup_auth() return type is int and currently it uses status
> variable that is of type u16 in nvmet_execute_auth_send().
> 
> Catch the return value of nvmet_setup_auth() into int and set the
> NVME_SC_INTERNAL as status variable before we jump to error.
> 
> Reported-by: Dan Carpenter <dan.carpenter at oracle.com>
> Signed-off-by: Chaitanya Kulkarni <kch at nvidia.com>
> ---
>   drivers/nvme/target/fabrics-cmd-auth.c | 6 ++++--
>   1 file changed, 4 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/nvme/target/fabrics-cmd-auth.c b/drivers/nvme/target/fabrics-cmd-auth.c
> index cc56e8c821ce..f1c9c2f51afb 100644
> --- a/drivers/nvme/target/fabrics-cmd-auth.c
> +++ b/drivers/nvme/target/fabrics-cmd-auth.c
> @@ -247,8 +247,10 @@ void nvmet_execute_auth_send(struct nvmet_req *req)
>   			pr_debug("%s: ctrl %d qid %d reset negotiation\n", __func__,
>   				 ctrl->cntlid, req->sq->qid);
>   			if (!req->sq->qid) {
> -				status = nvmet_setup_auth(ctrl);
> -				if (status < 0) {
> +				int ret = nvmet_setup_auth(ctrl);
> +
> +				if (ret < 0) {
> +					status = NVME_SC_INTERNAL;
>   					pr_err("ctrl %d qid 0 failed to setup"
>   					       "re-authentication",
>   					       ctrl->cntlid);

Reviewed-by: Hannes Reinecke <hare at suse.de>

Cheers,

Hannes



More information about the Linux-nvme mailing list