OSDN Git Service

scsi: mpi3mr: Return error if dma_alloc_coherent() fails
authorDan Carpenter <dan.carpenter@oracle.com>
Thu, 5 May 2022 10:25:52 +0000 (13:25 +0300)
committerMartin K. Petersen <martin.petersen@oracle.com>
Fri, 20 May 2022 00:16:26 +0000 (20:16 -0400)
Return -ENOMEM instead of success if dma_alloc_coherent() fails.

Link: https://lore.kernel.org/r/YnOmMGHqCOtUCYQ1@kili
Fixes: 43ca11005098 ("scsi: mpi3mr: Add support for PEL commands")
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
drivers/scsi/mpi3mr/mpi3mr_fw.c

index 74e0972..f1d4ea8 100644 (file)
@@ -3754,8 +3754,10 @@ retry_init:
                mrioc->pel_seqnum_virt = dma_alloc_coherent(&mrioc->pdev->dev,
                    mrioc->pel_seqnum_sz, &mrioc->pel_seqnum_dma,
                    GFP_KERNEL);
-               if (!mrioc->pel_seqnum_virt)
+               if (!mrioc->pel_seqnum_virt) {
+                       retval = -ENOMEM;
                        goto out_failed_noretry;
+               }
        }
 
        retval = mpi3mr_enable_events(mrioc);
@@ -3873,8 +3875,10 @@ retry_init:
                mrioc->pel_seqnum_virt = dma_alloc_coherent(&mrioc->pdev->dev,
                    mrioc->pel_seqnum_sz, &mrioc->pel_seqnum_dma,
                    GFP_KERNEL);
-               if (!mrioc->pel_seqnum_virt)
+               if (!mrioc->pel_seqnum_virt) {
+                       retval = -ENOMEM;
                        goto out_failed_noretry;
+               }
        }
 
        if (mrioc->shost->nr_hw_queues > mrioc->num_op_reply_q) {