diff options
author | Francois Romieu <romieu@fr.zoreil.com> | 2009-08-12 22:18:14 -0700 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2009-08-12 22:18:14 -0700 |
commit | 839d1624b9dcf31fdc02e47359043bb7bd71d6ca (patch) | |
tree | dfad513ded1d7f88c3d946c5f56a8a7176f1b408 | |
parent | 9799218ae36910af50f002a5db1802d576fffb43 (diff) | |
download | linux-839d1624b9dcf31fdc02e47359043bb7bd71d6ca.tar.bz2 |
8139cp: balance dma_map_single vs dma_unmap_single pair
The driver always:
1. allocate cp->rx_buf_sz + NET_IP_ALIGN
2. map cp->rx_buf_sz
Signed-off-by: Francois Romieu <romieu@fr.zoreil.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r-- | drivers/net/8139cp.c | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/drivers/net/8139cp.c b/drivers/net/8139cp.c index 50efde11ea6c..d0dbbf39349a 100644 --- a/drivers/net/8139cp.c +++ b/drivers/net/8139cp.c @@ -515,7 +515,7 @@ rx_status_loop: dma_addr_t mapping; struct sk_buff *skb, *new_skb; struct cp_desc *desc; - unsigned buflen; + const unsigned buflen = cp->rx_buf_sz; skb = cp->rx_skb[rx_tail]; BUG_ON(!skb); @@ -549,8 +549,7 @@ rx_status_loop: pr_debug("%s: rx slot %d status 0x%x len %d\n", dev->name, rx_tail, status, len); - buflen = cp->rx_buf_sz + NET_IP_ALIGN; - new_skb = netdev_alloc_skb(dev, buflen); + new_skb = netdev_alloc_skb(dev, buflen + NET_IP_ALIGN); if (!new_skb) { dev->stats.rx_dropped++; goto rx_next; |