Skip to content

Commit

Permalink
ibm_newemac: emac_close() needs to call netif_carrier_off()
Browse files Browse the repository at this point in the history
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>
  • Loading branch information
Petri Gynther authored and David S. Miller committed Aug 20, 2009
1 parent cbb35f8 commit d3b325f
Showing 1 changed file with 2 additions and 0 deletions.
2 changes: 2 additions & 0 deletions drivers/net/ibm_newemac/core.c
Original file line number Diff line number Diff line change
Expand Up @@ -1305,6 +1305,8 @@ static int emac_close(struct net_device *ndev)

free_irq(dev->emac_irq, dev);

netif_carrier_off(ndev);

return 0;
}

Expand Down

0 comments on commit d3b325f

Please sign in to comment.