diff options
| -rw-r--r-- | drivers/net/ehea/ehea.h | 2 | ||||
| -rw-r--r-- | drivers/net/ehea/ehea_main.c | 7 |
2 files changed, 4 insertions, 5 deletions
diff --git a/drivers/net/ehea/ehea.h b/drivers/net/ehea/ehea.h index b557bb44a36f..4b4b74e47a67 100644 --- a/drivers/net/ehea/ehea.h +++ b/drivers/net/ehea/ehea.h | |||
| @@ -40,7 +40,7 @@ | |||
| 40 | #include <asm/io.h> | 40 | #include <asm/io.h> |
| 41 | 41 | ||
| 42 | #define DRV_NAME "ehea" | 42 | #define DRV_NAME "ehea" |
| 43 | #define DRV_VERSION "EHEA_0078" | 43 | #define DRV_VERSION "EHEA_0079" |
| 44 | 44 | ||
| 45 | /* eHEA capability flags */ | 45 | /* eHEA capability flags */ |
| 46 | #define DLPAR_PORT_ADD_REM 1 | 46 | #define DLPAR_PORT_ADD_REM 1 |
diff --git a/drivers/net/ehea/ehea_main.c b/drivers/net/ehea/ehea_main.c index 2809c99906e0..0a7e78925540 100644 --- a/drivers/net/ehea/ehea_main.c +++ b/drivers/net/ehea/ehea_main.c | |||
| @@ -2329,7 +2329,7 @@ static void port_napi_disable(struct ehea_port *port) | |||
| 2329 | { | 2329 | { |
| 2330 | int i; | 2330 | int i; |
| 2331 | 2331 | ||
| 2332 | for (i = 0; i < port->num_def_qps; i++) | 2332 | for (i = 0; i < port->num_def_qps + port->num_add_tx_qps; i++) |
| 2333 | napi_disable(&port->port_res[i].napi); | 2333 | napi_disable(&port->port_res[i].napi); |
| 2334 | } | 2334 | } |
| 2335 | 2335 | ||
| @@ -2337,7 +2337,7 @@ static void port_napi_enable(struct ehea_port *port) | |||
| 2337 | { | 2337 | { |
| 2338 | int i; | 2338 | int i; |
| 2339 | 2339 | ||
| 2340 | for (i = 0; i < port->num_def_qps; i++) | 2340 | for (i = 0; i < port->num_def_qps + port->num_add_tx_qps; i++) |
| 2341 | napi_enable(&port->port_res[i].napi); | 2341 | napi_enable(&port->port_res[i].napi); |
| 2342 | } | 2342 | } |
| 2343 | 2343 | ||
| @@ -2373,8 +2373,6 @@ static int ehea_down(struct net_device *dev) | |||
| 2373 | ehea_drop_multicast_list(dev); | 2373 | ehea_drop_multicast_list(dev); |
| 2374 | ehea_free_interrupts(dev); | 2374 | ehea_free_interrupts(dev); |
| 2375 | 2375 | ||
| 2376 | port_napi_disable(port); | ||
| 2377 | |||
| 2378 | port->state = EHEA_PORT_DOWN; | 2376 | port->state = EHEA_PORT_DOWN; |
| 2379 | 2377 | ||
| 2380 | ret = ehea_clean_all_portres(port); | 2378 | ret = ehea_clean_all_portres(port); |
| @@ -2396,6 +2394,7 @@ static int ehea_stop(struct net_device *dev) | |||
| 2396 | flush_scheduled_work(); | 2394 | flush_scheduled_work(); |
| 2397 | down(&port->port_lock); | 2395 | down(&port->port_lock); |
| 2398 | netif_stop_queue(dev); | 2396 | netif_stop_queue(dev); |
| 2397 | port_napi_disable(port); | ||
| 2399 | ret = ehea_down(dev); | 2398 | ret = ehea_down(dev); |
| 2400 | up(&port->port_lock); | 2399 | up(&port->port_lock); |
| 2401 | return ret; | 2400 | return ret; |
