Skip to content

Commit 3af0d55

Browse files
Dan Carpenterdavem330
authored andcommitted
ethernet: micrel: fix some error codes
There were two issues here: 1) dma_mapping_error() return true/false but we want to return -ENOMEM 2) If dmaengine_prep_slave_sg() failed then "err" wasn't set but presumably that should be -ENOMEM as well. I changed the success path to "return 0;" instead of "return ret;" for clarity. Fixes: 94fe8c6 ('ks8842: Support DMA when accessed via timberdale') Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com> Signed-off-by: David S. Miller <davem@davemloft.net>
1 parent 3004932 commit 3af0d55

File tree

1 file changed

+6
-4
lines changed

1 file changed

+6
-4
lines changed

drivers/net/ethernet/micrel/ks8842.c

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -561,8 +561,8 @@ static int __ks8842_start_new_rx_dma(struct net_device *netdev)
561561
sg_init_table(sg, 1);
562562
sg_dma_address(sg) = dma_map_single(adapter->dev,
563563
ctl->skb->data, DMA_BUFFER_SIZE, DMA_FROM_DEVICE);
564-
err = dma_mapping_error(adapter->dev, sg_dma_address(sg));
565-
if (unlikely(err)) {
564+
if (dma_mapping_error(adapter->dev, sg_dma_address(sg))) {
565+
err = -ENOMEM;
566566
sg_dma_address(sg) = 0;
567567
goto out;
568568
}
@@ -572,8 +572,10 @@ static int __ks8842_start_new_rx_dma(struct net_device *netdev)
572572
ctl->adesc = dmaengine_prep_slave_sg(ctl->chan,
573573
sg, 1, DMA_DEV_TO_MEM, DMA_PREP_INTERRUPT);
574574

575-
if (!ctl->adesc)
575+
if (!ctl->adesc) {
576+
err = -ENOMEM;
576577
goto out;
578+
}
577579

578580
ctl->adesc->callback_param = netdev;
579581
ctl->adesc->callback = ks8842_dma_rx_cb;
@@ -584,7 +586,7 @@ static int __ks8842_start_new_rx_dma(struct net_device *netdev)
584586
goto out;
585587
}
586588

587-
return err;
589+
return 0;
588590
out:
589591
if (sg_dma_address(sg))
590592
dma_unmap_single(adapter->dev, sg_dma_address(sg),

0 commit comments

Comments
 (0)