bnx2x: Carrier off first call
authorEilon Greenstein <eilong@broadcom.com>
Thu, 22 Jan 2009 03:37:48 +0000 (03:37 +0000)
committerDavid S. Miller <davem@davemloft.net>
Thu, 22 Jan 2009 21:45:06 +0000 (13:45 -0800)
Call carrier off should not be called after register_netdev since after
register netdev open can be called at any time followed by an interrupt that
will set it to carrier_on and the probe will resume control and set it to off

Signed-off-by: Eilon Greenstein <eilong@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/bnx2x_main.c

index 707c4bbe46a4d36d46eb6edec0a9ff963b0beae8..fbd71659cca6a61d5a356820c67f01ae37758dd0 100644 (file)
@@ -9827,6 +9827,8 @@ static int bnx2x_open(struct net_device *dev)
 {
        struct bnx2x *bp = netdev_priv(dev);
 
+       netif_carrier_off(dev);
+
        bnx2x_set_power_state(bp, PCI_D0);
 
        return bnx2x_nic_load(bp, LOAD_OPEN);
@@ -10332,8 +10334,6 @@ static int __devinit bnx2x_init_one(struct pci_dev *pdev,
                goto init_one_exit;
        }
 
-       netif_carrier_off(dev);
-
        bp->common.name = board_info[ent->driver_data].name;
        printk(KERN_INFO "%s: %s (%c%d) PCI-E x%d %s found at mem %lx,"
               " IRQ %d, ", dev->name, bp->common.name,