]> www.infradead.org Git - users/dwmw2/linux.git/commitdiff
scsi: qla2xxx: Fix DMA mapping test in qla24xx_get_port_database()
authorThomas Fourier <fourier.thomas@gmail.com>
Tue, 17 Jun 2025 16:11:11 +0000 (18:11 +0200)
committerMartin K. Petersen <martin.petersen@oracle.com>
Mon, 23 Jun 2025 17:21:59 +0000 (13:21 -0400)
dma_map_XXX() functions return as error values DMA_MAPPING_ERROR which is
often ~0.  The error value should be tested with dma_mapping_error() like
it was done in qla26xx_dport_diagnostics().

Fixes: 818c7f87a177 ("scsi: qla2xxx: Add changes in preparation for vendor extended FDMI/RDP")
Signed-off-by: Thomas Fourier <fourier.thomas@gmail.com>
Link: https://lore.kernel.org/r/20250617161115.39888-2-fourier.thomas@gmail.com
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
drivers/scsi/qla2xxx/qla_mbx.c

index 0cd6f3e1488249b4a744ed08b81aeb84b888203f..13b6cb1b93acd9ac5baabb32daef0bf65f0bbe6b 100644 (file)
@@ -2147,7 +2147,7 @@ qla24xx_get_port_database(scsi_qla_host_t *vha, u16 nport_handle,
 
        pdb_dma = dma_map_single(&vha->hw->pdev->dev, pdb,
            sizeof(*pdb), DMA_FROM_DEVICE);
-       if (!pdb_dma) {
+       if (dma_mapping_error(&vha->hw->pdev->dev, pdb_dma)) {
                ql_log(ql_log_warn, vha, 0x1116, "Failed to map dma buffer.\n");
                return QLA_MEMORY_ALLOC_FAILED;
        }