be2net: Call netif_carier_off() after register_netdev()
Subsystems (2)
PATCH 1/2 be2net: Call netif_carier_off() after register_netdev()
Calling netif_carrier_off before register_netdev was causing the network interface to miss a linkwatch pending event leading to an inconsistent state if the link is not up when interface is initialized.This is now invoked after register_netdev.
Signed-off-by Somnath Kotur <[email protected]>
--- drivers/net/benet/be_main.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-)
drivers/net/benet/be_main.c +1 -1
@@ -2556,7 +2556,6 @@ static void be_netdev_init(struct net_device *netdev)netif_napi_add (netdev, &adapter->tx_eq.napi, be_poll_tx_mcc,BE_NAPI_WEIGHT ); -netif_carrier_off (netdev);netif_stop_queue (netdev); }
@@ -2865,6 +2864,7 @@ static int __devinit be_probe(struct pci_dev *pdev, status =register_netdev (netdev);if (status !=0 ) goto unsetup; +netif_carrier_off (netdev);dev_info (&pdev->dev,"%s port %d\n" ,nic_name (pdev), adapter->port_num);return 0 ;
Signature · 1 line
1.5.6.1
From: Somnath Kotur <[email protected]>
Date: Mon, 25 Oct 2010 16:41:10 +0530
Quoted 5 lines
Calling
netif_carrier_offbeforeregister_netdevwas causing the network interface to miss a linkwatch pending event leading to an inconsistent state if the link is not up when interface is initialized.This is now invoked afterregister_netdev.Signed-off-by Somnath Kotur <[email protected]>
Applied.