diff options
author | Stanislaw Gruszka <sgruszka@redhat.com> | 2011-01-26 01:45:42 +0100 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2011-01-27 23:18:34 +0100 |
commit | 9eb710797a21fa4a9e09ae9c86c4b3ec9d291c2d (patch) | |
tree | 30d24bd2bcd5fe111a3c9037eb878ff0cc0fc5cc /drivers/net/dl2k.c | |
parent | xen: netfront: handle incoming GSO SKBs which are not CHECKSUM_PARTIAL (diff) | |
download | linux-9eb710797a21fa4a9e09ae9c86c4b3ec9d291c2d.tar.xz linux-9eb710797a21fa4a9e09ae9c86c4b3ec9d291c2d.zip |
dl2k: nulify fraginfo after unmap
Patch fixes: "DMA-API: device driver tries to free an invalid DMA
memory address" warning reported here:
https://bugzilla.redhat.com/show_bug.cgi?id=639824
Reported-by: Frantisek Hanzlik <franta@hanzlici.cz>
Signed-off-by: Stanislaw Gruszka <sgruszka@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to '')
-rw-r--r-- | drivers/net/dl2k.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/net/dl2k.c b/drivers/net/dl2k.c index e1a8216ff692..c05db6046050 100644 --- a/drivers/net/dl2k.c +++ b/drivers/net/dl2k.c @@ -1753,8 +1753,6 @@ rio_close (struct net_device *dev) /* Free all the skbuffs in the queue. */ for (i = 0; i < RX_RING_SIZE; i++) { - np->rx_ring[i].status = 0; - np->rx_ring[i].fraginfo = 0; skb = np->rx_skbuff[i]; if (skb) { pci_unmap_single(np->pdev, @@ -1763,6 +1761,8 @@ rio_close (struct net_device *dev) dev_kfree_skb (skb); np->rx_skbuff[i] = NULL; } + np->rx_ring[i].status = 0; + np->rx_ring[i].fraginfo = 0; } for (i = 0; i < TX_RING_SIZE; i++) { skb = np->tx_skbuff[i]; |