]> asedeno.scripts.mit.edu Git - linux.git/commitdiff
IB/qib: Fix an error code in qib_sdma_verbs_send()
authorDan Carpenter <dan.carpenter@oracle.com>
Mon, 17 Dec 2018 07:05:36 +0000 (10:05 +0300)
committerJason Gunthorpe <jgg@mellanox.com>
Tue, 18 Dec 2018 21:20:41 +0000 (14:20 -0700)
We accidentally return success on this error path.

Fixes: f931551bafe1 ("IB/qib: Add new qib driver for QLogic PCIe InfiniBand adapters")
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Jason Gunthorpe <jgg@mellanox.com>
drivers/infiniband/hw/qib/qib_sdma.c

index 0b6ca424c11d26a204a0d9c6c1fad68526d69ed6..3d64081c48195af55afbe3c6b6e19d891f8cc281 100644 (file)
@@ -575,8 +575,10 @@ int qib_sdma_verbs_send(struct qib_pportdata *ppd,
                dw = (len + 3) >> 2;
                addr = dma_map_single(&ppd->dd->pcidev->dev, sge->vaddr,
                                      dw << 2, DMA_TO_DEVICE);
-               if (dma_mapping_error(&ppd->dd->pcidev->dev, addr))
+               if (dma_mapping_error(&ppd->dd->pcidev->dev, addr)) {
+                       ret = -ENOMEM;
                        goto unmap;
+               }
                sdmadesc[0] = 0;
                make_sdma_desc(ppd, sdmadesc, (u64) addr, dw, dwoffset);
                /* SDmaUseLargeBuf has to be set in every descriptor */