crypto: cavium/nitrox - dma_mapping_error() returns bool
authorDan Carpenter <dan.carpenter@oracle.com>
Mon, 19 Jun 2017 10:51:25 +0000 (13:51 +0300)
committerHerbert Xu <herbert@gondor.apana.org.au>
Thu, 22 Jun 2017 08:54:08 +0000 (16:54 +0800)
We want to return negative error codes here, but we're accidentally
propogating the "true" return from dma_mapping_error().

Fixes: 14fa93cdcd9b ("crypto: cavium - Add support for CNN55XX adapters.")
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
drivers/crypto/cavium/nitrox/nitrox_reqmgr.c

index b6bd2a870028cca9fd030ba3764ba15cd8a7283f..4bb4377c5ac013778271e3d79731f8d7545bacfc 100644 (file)
@@ -199,9 +199,10 @@ static int dma_map_inbufs(struct nitrox_softreq *sr,
        sr->in.sglist = glist;
        /* map IV */
        dma = dma_map_single(dev, &req->iv, req->ivsize, DMA_BIDIRECTIONAL);
-       ret = dma_mapping_error(dev, dma);
-       if (ret)
+       if (dma_mapping_error(dev, dma)) {
+               ret = -EINVAL;
                goto iv_map_err;
+       }
 
        sr->in.dir = (req->src == req->dst) ? DMA_BIDIRECTIONAL : DMA_TO_DEVICE;
        /* map src entries */
@@ -268,16 +269,18 @@ static int dma_map_outbufs(struct nitrox_softreq *sr,
        /* map ORH */
        sr->resp.orh_dma = dma_map_single(dev, &sr->resp.orh, ORH_HLEN,
                                          sr->out.dir);
-       ret = dma_mapping_error(dev, sr->resp.orh_dma);
-       if (ret)
+       if (dma_mapping_error(dev, sr->resp.orh_dma)) {
+               ret = -EINVAL;
                goto orh_map_err;
+       }
 
        /* map completion */
        sr->resp.completion_dma = dma_map_single(dev, &sr->resp.completion,
                                                 COMP_HLEN, sr->out.dir);
-       ret = dma_mapping_error(dev, sr->resp.completion_dma);
-       if (ret)
+       if (dma_mapping_error(dev, sr->resp.completion_dma)) {
+               ret = -EINVAL;
                goto compl_map_err;
+       }
 
        sr->inplace = (req->src == req->dst) ? true : false;
        /* out place */