]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
scsi: qla4xxx: Fix missing DMA mapping error in qla4xxx_alloc_pdu()
authorThomas Fourier <fourier.thomas@gmail.com>
Wed, 18 Jun 2025 07:17:37 +0000 (09:17 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 17 Jul 2025 16:24:56 +0000 (18:24 +0200)
[ Upstream commit 00f452a1b084efbe8dcb60a29860527944a002a1 ]

dma_map_XXX() can fail and should be tested for errors with
dma_mapping_error().

Fixes: b3a271a94d00 ("[SCSI] qla4xxx: support iscsiadm session mgmt")
Signed-off-by: Thomas Fourier <fourier.thomas@gmail.com>
Link: https://lore.kernel.org/r/20250618071742.21822-2-fourier.thomas@gmail.com
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/scsi/qla4xxx/ql4_os.c

index ea15bbe0397fc1b7bf0d4002e2b86bb9811faa54..af1c45dd2f38a4d35aa35e0f0fc66b784c1292e9 100644 (file)
@@ -3394,6 +3394,8 @@ static int qla4xxx_alloc_pdu(struct iscsi_task *task, uint8_t opcode)
                task_data->data_dma = dma_map_single(&ha->pdev->dev, task->data,
                                                     task->data_count,
                                                     DMA_TO_DEVICE);
+               if (dma_mapping_error(&ha->pdev->dev, task_data->data_dma))
+                       return -ENOMEM;
        }
 
        DEBUG2(ql4_printk(KERN_INFO, ha, "%s: MaxRecvLen %u, iscsi hrd %d\n",