stmmac: fix oops on rmmod after assigning ip addr
authorBryan O'Donoghue <pure.logic@nexus-software.ie>
Thu, 16 Apr 2015 16:56:03 +0000 (17:56 +0100)
committerDavid S. Miller <davem@davemloft.net>
Thu, 16 Apr 2015 17:57:07 +0000 (13:57 -0400)
commite743471f8d9c6ad00eb10a6d1e05803231e1de83
tree656c0280625b37eacfa1f7e8a395767c39b6f93b
parent31976cfdc7e2e8b0b23d731703e4f1e21ff79466
stmmac: fix oops on rmmod after assigning ip addr

An oops exists in the flow of stmmac_release().
phy_ethtool_get_wol() depends on phydev->drv.
phydev->drv will be null after stmmac_mdio_unreg() completes.

Steps to reproduce on Quark X1000:

1. ifconfig eth0 192.168.0.1
2. rmmod stmmac_pci

To fix this stmmac_mdio_unreg() should be run after unregister_netdev().

Signed-off-by: Bryan O'Donoghue <pure.logic@nexus-software.ie>
Reported-by: Dan O'Donovan <dan.odonovan@emutex.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/stmicro/stmmac/stmmac_main.c