diff options
author | Flavio Leitner <fbl@redhat.com> | 2012-07-11 04:56:55 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2012-07-12 10:54:46 -0400 |
commit | fa919833e354b2e62b3c7d26920d1685ddc81eb2 (patch) | |
tree | 831084242b096cf9f17df72f43f6b09f18811148 /drivers/net/ethernet/qlogic/netxen | |
parent | 33c34c5e9310622d5ed9a53d571f92824044020f (diff) |
netxen: fix link notification order
First update the adapter variables with the current speed and
mode before fire the notification. Otherwise, the get_settings()
may provide old values.
Signed-off-by: Flavio Leitner <fbl@redhat.com>
Acked-by: Rajesh Borundia <rajesh.borundia@qlogic.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/ethernet/qlogic/netxen')
-rw-r--r-- | drivers/net/ethernet/qlogic/netxen/netxen_nic_init.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/net/ethernet/qlogic/netxen/netxen_nic_init.c b/drivers/net/ethernet/qlogic/netxen/netxen_nic_init.c index b2c1b6764771..bc165f4d0f65 100644 --- a/drivers/net/ethernet/qlogic/netxen/netxen_nic_init.c +++ b/drivers/net/ethernet/qlogic/netxen/netxen_nic_init.c | |||
@@ -1437,8 +1437,6 @@ netxen_handle_linkevent(struct netxen_adapter *adapter, nx_fw_msg_t *msg) | |||
1437 | netdev->name, cable_len); | 1437 | netdev->name, cable_len); |
1438 | } | 1438 | } |
1439 | 1439 | ||
1440 | netxen_advert_link_change(adapter, link_status); | ||
1441 | |||
1442 | /* update link parameters */ | 1440 | /* update link parameters */ |
1443 | if (duplex == LINKEVENT_FULL_DUPLEX) | 1441 | if (duplex == LINKEVENT_FULL_DUPLEX) |
1444 | adapter->link_duplex = DUPLEX_FULL; | 1442 | adapter->link_duplex = DUPLEX_FULL; |
@@ -1447,6 +1445,8 @@ netxen_handle_linkevent(struct netxen_adapter *adapter, nx_fw_msg_t *msg) | |||
1447 | adapter->module_type = module; | 1445 | adapter->module_type = module; |
1448 | adapter->link_autoneg = autoneg; | 1446 | adapter->link_autoneg = autoneg; |
1449 | adapter->link_speed = link_speed; | 1447 | adapter->link_speed = link_speed; |
1448 | |||
1449 | netxen_advert_link_change(adapter, link_status); | ||
1450 | } | 1450 | } |
1451 | 1451 | ||
1452 | static void | 1452 | static void |