Skip to content

Commit d91dc17

Browse files
GustavoARSilvaaxboe
authored andcommitted
skd: fix unchecked return values
Check return values of dma_set_mask_and_coherent(). Otherwise, if dma_set_mask_and_coherent(&pdev->dev, DMA_BIT_MASK(64)); fails, the following piece of code will be executed even when the call to dma_set_mask_and_coherent(&pdev->dev, DMA_BIT_MASK(32)); returns 0: dev_err(&pdev->dev, "DMA mask error %d\n", rc); goto err_out_regions; Addresses-Coverity-ID: 1474553 ("Unchecked return value") Fixes: 1381262 ("skd: switch to the generic DMA API") Reviewed-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Gustavo A. R. Silva <gustavo@embeddedor.com> Signed-off-by: Jens Axboe <axboe@kernel.dk>
1 parent f92898e commit d91dc17

File tree

1 file changed

+2
-2
lines changed

1 file changed

+2
-2
lines changed

drivers/block/skd_main.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3175,7 +3175,7 @@ static int skd_pci_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
31753175
goto err_out;
31763176
rc = dma_set_mask_and_coherent(&pdev->dev, DMA_BIT_MASK(64));
31773177
if (rc)
3178-
dma_set_mask_and_coherent(&pdev->dev, DMA_BIT_MASK(32));
3178+
rc = dma_set_mask_and_coherent(&pdev->dev, DMA_BIT_MASK(32));
31793179
if (rc) {
31803180
dev_err(&pdev->dev, "DMA mask error %d\n", rc);
31813181
goto err_out_regions;
@@ -3364,7 +3364,7 @@ static int skd_pci_resume(struct pci_dev *pdev)
33643364
goto err_out;
33653365
rc = dma_set_mask_and_coherent(&pdev->dev, DMA_BIT_MASK(64));
33663366
if (rc)
3367-
dma_set_mask_and_coherent(&pdev->dev, DMA_BIT_MASK(32));
3367+
rc = dma_set_mask_and_coherent(&pdev->dev, DMA_BIT_MASK(32));
33683368
if (rc) {
33693369
dev_err(&pdev->dev, "DMA mask error %d\n", rc);
33703370
goto err_out_regions;

0 commit comments

Comments
 (0)