ibm_newemac: emac_close() needs to call netif_carrier_off()
authorPetri Gynther <pgynther@google.com>
Thu, 20 Aug 2009 09:21:27 +0000 (02:21 -0700)
committerDavid S. Miller <davem@davemloft.net>
Thu, 20 Aug 2009 09:21:27 +0000 (02:21 -0700)
commitd3b325f9c25be6d504bc73afce7f92d0e25001d7
treef98e2f0194b0ff34d590daa266575d276a9758e6
parentcbb35f8a2858f7e0fff5df598cb286c4bcae5976
ibm_newemac: emac_close() needs to call netif_carrier_off()

When ibm_newemac netdev instance is shutdown with "ifconfig down",
the netdev interface does not go properly down. netif_carrier_ok()
keeps returning TRUE even after "ifconfig down".

The problem can be seen when ibm_newemac instances are slaves of
a bonding interface. The bonding interface code uses netif_carrier_ok()
to determine the link status of its slaves. When ibm_newemac slave is
shutdown with "ifconfig down", the bonding interface won't detect any
link status change because netif_carrier_ok() keeps returning TRUE.

Signed-off-by: Petri Gynther <pgynther@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ibm_newemac/core.c