diff options
-rw-r--r-- | drivers/net/ethernet/amd/xgbe/xgbe-drv.c | 10 |
1 files changed, 2 insertions, 8 deletions
diff --git a/drivers/net/ethernet/amd/xgbe/xgbe-drv.c b/drivers/net/ethernet/amd/xgbe/xgbe-drv.c index 248f60d171a5..ffea9859f5a7 100644 --- a/drivers/net/ethernet/amd/xgbe/xgbe-drv.c +++ b/drivers/net/ethernet/amd/xgbe/xgbe-drv.c | |||
@@ -2272,10 +2272,7 @@ static int xgbe_one_poll(struct napi_struct *napi, int budget) | |||
2272 | processed = xgbe_rx_poll(channel, budget); | 2272 | processed = xgbe_rx_poll(channel, budget); |
2273 | 2273 | ||
2274 | /* If we processed everything, we are done */ | 2274 | /* If we processed everything, we are done */ |
2275 | if (processed < budget) { | 2275 | if ((processed < budget) && napi_complete_done(napi, processed)) { |
2276 | /* Turn off polling */ | ||
2277 | napi_complete_done(napi, processed); | ||
2278 | |||
2279 | /* Enable Tx and Rx interrupts */ | 2276 | /* Enable Tx and Rx interrupts */ |
2280 | if (pdata->channel_irq_mode) | 2277 | if (pdata->channel_irq_mode) |
2281 | xgbe_enable_rx_tx_int(pdata, channel); | 2278 | xgbe_enable_rx_tx_int(pdata, channel); |
@@ -2317,10 +2314,7 @@ static int xgbe_all_poll(struct napi_struct *napi, int budget) | |||
2317 | } while ((processed < budget) && (processed != last_processed)); | 2314 | } while ((processed < budget) && (processed != last_processed)); |
2318 | 2315 | ||
2319 | /* If we processed everything, we are done */ | 2316 | /* If we processed everything, we are done */ |
2320 | if (processed < budget) { | 2317 | if ((processed < budget) && napi_complete_done(napi, processed)) { |
2321 | /* Turn off polling */ | ||
2322 | napi_complete_done(napi, processed); | ||
2323 | |||
2324 | /* Enable Tx and Rx interrupts */ | 2318 | /* Enable Tx and Rx interrupts */ |
2325 | xgbe_enable_rx_tx_ints(pdata); | 2319 | xgbe_enable_rx_tx_ints(pdata); |
2326 | } | 2320 | } |