scsi: mpt3sas: Fix return value check of dma_get_required_mask()
[ Upstream commit e0e0747de0ea3dd87cdbb0393311e17471a9baf1 ]
Fix the incorrect return value check of dma_get_required_mask(). Due to
this incorrect check, the driver was always setting the DMA mask to 63 bit.
Link: https://lore.kernel.org/r/20220913120538.18759-2-sreekanth.reddy@broadcom.com
Fixes: ba27c5cf28
("scsi: mpt3sas: Don't change the DMA coherent mask after allocations")
Signed-off-by: Sreekanth Reddy <sreekanth.reddy@broadcom.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:

committed by
Greg Kroah-Hartman

parent
e7fafef983
commit
2b9aba0c5d
@@ -2825,7 +2825,7 @@ _base_config_dma_addressing(struct MPT3SAS_ADAPTER *ioc, struct pci_dev *pdev)
|
|||||||
|
|
||||||
if (ioc->is_mcpu_endpoint ||
|
if (ioc->is_mcpu_endpoint ||
|
||||||
sizeof(dma_addr_t) == 4 || ioc->use_32bit_dma ||
|
sizeof(dma_addr_t) == 4 || ioc->use_32bit_dma ||
|
||||||
dma_get_required_mask(&pdev->dev) <= 32)
|
dma_get_required_mask(&pdev->dev) <= DMA_BIT_MASK(32))
|
||||||
ioc->dma_mask = 32;
|
ioc->dma_mask = 32;
|
||||||
/* Set 63 bit DMA mask for all SAS3 and SAS35 controllers */
|
/* Set 63 bit DMA mask for all SAS3 and SAS35 controllers */
|
||||||
else if (ioc->hba_mpi_version_belonged > MPI2_VERSION)
|
else if (ioc->hba_mpi_version_belonged > MPI2_VERSION)
|
||||||
|
Reference in New Issue
Block a user