diff options
Diffstat (limited to 'drivers/infiniband/hw/nes/nes_nic.c')
-rw-r--r-- | drivers/infiniband/hw/nes/nes_nic.c | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/drivers/infiniband/hw/nes/nes_nic.c b/drivers/infiniband/hw/nes/nes_nic.c index 5cc0a9ae5bb1..c0c404ee3bc4 100644 --- a/drivers/infiniband/hw/nes/nes_nic.c +++ b/drivers/infiniband/hw/nes/nes_nic.c | |||
@@ -232,6 +232,13 @@ static int nes_netdev_open(struct net_device *netdev) | |||
232 | NES_MAC_INT_TX_UNDERFLOW | NES_MAC_INT_TX_ERROR)); | 232 | NES_MAC_INT_TX_UNDERFLOW | NES_MAC_INT_TX_ERROR)); |
233 | first_nesvnic = nesvnic; | 233 | first_nesvnic = nesvnic; |
234 | } | 234 | } |
235 | |||
236 | if (nesvnic->of_device_registered) { | ||
237 | nesdev->iw_status = 1; | ||
238 | nesdev->nesadapter->send_term_ok = 1; | ||
239 | nes_port_ibevent(nesvnic); | ||
240 | } | ||
241 | |||
235 | if (first_nesvnic->linkup) { | 242 | if (first_nesvnic->linkup) { |
236 | /* Enable network packets */ | 243 | /* Enable network packets */ |
237 | nesvnic->linkup = 1; | 244 | nesvnic->linkup = 1; |
@@ -309,9 +316,9 @@ static int nes_netdev_stop(struct net_device *netdev) | |||
309 | 316 | ||
310 | 317 | ||
311 | if (nesvnic->of_device_registered) { | 318 | if (nesvnic->of_device_registered) { |
312 | nes_destroy_ofa_device(nesvnic->nesibdev); | 319 | nesdev->nesadapter->send_term_ok = 0; |
313 | nesvnic->nesibdev = NULL; | 320 | nesdev->iw_status = 0; |
314 | nesvnic->of_device_registered = 0; | 321 | nes_port_ibevent(nesvnic); |
315 | } | 322 | } |
316 | nes_destroy_nic_qp(nesvnic); | 323 | nes_destroy_nic_qp(nesvnic); |
317 | 324 | ||