4.4-stable review patch.  If anyone has any objections, please let me know.

------------------

From: Finn Thain <fth...@telegraphics.com.au>

[ Upstream commit 26de0b76d9ba3200f09c6cb9d9618bda338be5f7 ]

With CONFIG_DMA_API_DEBUG=y, calling sonic_open() produces the
message, "DMA-API: device driver failed to check map error".
Add the missing dma_mapping_error() call.

Cc: Thomas Bogendoerfer <tsbog...@alpha.franken.de>
Signed-off-by: Finn Thain <fth...@telegraphics.com.au>
Acked-by: Thomas Bogendoerfer <tsbog...@alpha.franken.de>
Signed-off-by: David S. Miller <da...@davemloft.net>
Signed-off-by: Sasha Levin <alexander.le...@microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gre...@linuxfoundation.org>
---
 drivers/net/ethernet/natsemi/sonic.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

--- a/drivers/net/ethernet/natsemi/sonic.c
+++ b/drivers/net/ethernet/natsemi/sonic.c
@@ -71,7 +71,7 @@ static int sonic_open(struct net_device
        for (i = 0; i < SONIC_NUM_RRS; i++) {
                dma_addr_t laddr = dma_map_single(lp->device, 
skb_put(lp->rx_skb[i], SONIC_RBSIZE),
                                                  SONIC_RBSIZE, 
DMA_FROM_DEVICE);
-               if (!laddr) {
+               if (dma_mapping_error(lp->device, laddr)) {
                        while(i > 0) { /* free any that were mapped 
successfully */
                                i--;
                                dma_unmap_single(lp->device, lp->rx_laddr[i], 
SONIC_RBSIZE, DMA_FROM_DEVICE);


Reply via email to