summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKrzysztof Halasa <khc@pm.waw.pl>2004-04-25 13:43:37 -0400
committerJeff Garzik <jgarzik@redhat.com>2004-04-25 13:43:37 -0400
commit2210dfec14407ea8604873fe071e084899efafef (patch)
tree0838a89cac3e4872a359261f840bee80bd740f64
parent1eb6501c482b3e7ef2f8d204c0bd4c1acb9f1fd2 (diff)
[netdrvr tulip] fix use-after-free
The attached patch fixes an "oops" in tulip driver when a live interface is deactivated (i.e. PC Card ejected or module unloaded) without being brought down first.
-rw-r--r--drivers/net/tulip/tulip_core.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/net/tulip/tulip_core.c b/drivers/net/tulip/tulip_core.c
index 9ae70d7200c4..c3b4d91bcf8e 100644
--- a/drivers/net/tulip/tulip_core.c
+++ b/drivers/net/tulip/tulip_core.c
@@ -1761,11 +1761,11 @@ static void __devexit tulip_remove_one (struct pci_dev *pdev)
return;
tp = netdev_priv(dev);
+ unregister_netdev(dev);
pci_free_consistent (pdev,
sizeof (struct tulip_rx_desc) * RX_RING_SIZE +
sizeof (struct tulip_tx_desc) * TX_RING_SIZE,
tp->rx_ring, tp->rx_ring_dma);
- unregister_netdev (dev);
if (tp->mtable)
kfree (tp->mtable);
#ifndef USE_IO_OPS