]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
scsi: fnic: Fix missing DMA mapping error in fnic_send_frame()
authorThomas Fourier <fourier.thomas@gmail.com>
Wed, 18 Jun 2025 06:57:04 +0000 (08:57 +0200)
committerMartin K. Petersen <martin.petersen@oracle.com>
Fri, 20 Jun 2025 03:07:57 +0000 (23:07 -0400)
dma_map_XXX() can fail and should be tested for errors with
dma_mapping_error().

Fixes: a63e78eb2b0f ("scsi: fnic: Add support for fabric based solicited requests and responses")
Signed-off-by: Thomas Fourier <fourier.thomas@gmail.com>
Link: https://lore.kernel.org/r/20250618065715.14740-2-fourier.thomas@gmail.com
Reviewed-by: Karan Tilak Kumar <kartilak@cisco.com>
Reviewed-by: John Menghini <jmeneghi@redhat.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
drivers/scsi/fnic/fnic_fcs.c

index 1e8cd64f9a5c550007e1ad5ee736d32a1a6f0bfb..103ab6f1f7cd1c4a8cad19d2372a45b3eaf6505c 100644 (file)
@@ -636,6 +636,8 @@ static int fnic_send_frame(struct fnic *fnic, void *frame, int frame_len)
        unsigned long flags;
 
        pa = dma_map_single(&fnic->pdev->dev, frame, frame_len, DMA_TO_DEVICE);
+       if (dma_mapping_error(&fnic->pdev->dev, pa))
+               return -ENOMEM;
 
        if ((fnic_fc_trace_set_data(fnic->fnic_num,
                                FNIC_FC_SEND | 0x80, (char *) frame,