[PATCH 1/2] nvme-fc: avoid null pointer dereference
James Smart
jsmart2021 at gmail.com
Fri Dec 2 08:07:48 PST 2022
On 11/30/2022 1:33 PM, Chaitanya Kulkarni wrote:
> Before using dynamically allcoated variable lsop in the
> nvme_fc_rcv_ls_req(), add a check for NULL and error out early.
>
> Signed-off-by: Chaitanya Kulkarni <kch at nvidia.com>
> ---
> drivers/nvme/host/fc.c | 11 ++++++++++-
> 1 file changed, 10 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/nvme/host/fc.c b/drivers/nvme/host/fc.c
> index 489f5e797204..06bae7150087 100644
> --- a/drivers/nvme/host/fc.c
> +++ b/drivers/nvme/host/fc.c
> @@ -1754,9 +1754,18 @@ nvme_fc_rcv_ls_req(struct nvme_fc_remote_port *portptr,
> }
>
> lsop = kzalloc(sizeof(*lsop), GFP_KERNEL);
> + if (!lsop) {
> + dev_info(lport->dev,
> + "RCV %s LS failed: No memory\n",
> + (w0->ls_cmd <= NVME_FC_LAST_LS_CMD_VALUE) ?
> + nvmefc_ls_names[w0->ls_cmd] : "");
> + ret = -ENOMEM;
> + goto out_put;
> + }
> +
> lsop->rqstbuf = kzalloc(sizeof(*lsop->rqstbuf), GFP_KERNEL);
> lsop->rspbuf = kzalloc(sizeof(*lsop->rspbuf), GFP_KERNEL);
> - if (!lsop || !lsop->rqstbuf || !lsop->rspbuf) {
> + if (!lsop->rqstbuf || !lsop->rspbuf) {
> dev_info(lport->dev,
> "RCV %s LS failed: No memory\n",
> (w0->ls_cmd <= NVME_FC_LAST_LS_CMD_VALUE) ?
Looks good
Reviewed-by: James Smart <jsmart2021 at gmail.com>
-- james
More information about the Linux-nvme
mailing list