Bugfix: when cleaning up the transmit queue upon device close,
be sure to walk the entire queue.

Signed-off-by: Linas Vepstas <[EMAIL PROTECTED]>
Cc: James K Lewis <[EMAIL PROTECTED]>
Cc: Arnd Bergmann <[EMAIL PROTECTED]>

----
 drivers/net/spider_net.c |    5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

Index: linux-2.6.18-mm2/drivers/net/spider_net.c
===================================================================
--- linux-2.6.18-mm2.orig/drivers/net/spider_net.c      2006-10-10 
12:21:40.000000000 -0500
+++ linux-2.6.18-mm2/drivers/net/spider_net.c   2006-10-10 12:22:49.000000000 
-0500
@@ -699,6 +699,8 @@ spider_net_release_tx_descr(struct spide
 
        /* unmap the skb */
        skb = descr->skb;
+       if (!skb)
+               return;
        pci_unmap_single(card->pdev, descr->buf_addr, skb->len,
                        PCI_DMA_TODEVICE);
        dev_kfree_skb_any(skb);
@@ -751,7 +753,8 @@ spider_net_release_tx_chain(struct spide
 
                default:
                        card->netdev_stats.tx_dropped++;
-                       return 1;
+                       if (!brutal)
+                               return 1;
                }
                spider_net_release_tx_descr(card);
        }
-
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to