macb: Call phy_disconnect on removing
authorAtsushi Nemoto <anemo@mba.ocn.ne.jp>
Thu, 10 Apr 2008 14:30:07 +0000 (23:30 +0900)
committerJeff Garzik <jgarzik@redhat.com>
Sat, 12 Apr 2008 07:01:42 +0000 (03:01 -0400)
Call phy_disconnect() on remove routine.  Otherwise the phy timer
causes a kernel crash when unloading.

Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
drivers/net/macb.c

index 1d210ed..10fcea5 100644 (file)
@@ -1257,6 +1257,8 @@ static int __exit macb_remove(struct platform_device *pdev)
 
        if (dev) {
                bp = netdev_priv(dev);
+               if (bp->phy_dev)
+                       phy_disconnect(bp->phy_dev);
                mdiobus_unregister(&bp->mii_bus);
                kfree(bp->mii_bus.irq);
                unregister_netdev(dev);