diff options
| -rw-r--r-- | drivers/net/ethernet/ibm/emac/mal.c | 12 |
1 files changed, 4 insertions, 8 deletions
diff --git a/drivers/net/ethernet/ibm/emac/mal.c b/drivers/net/ethernet/ibm/emac/mal.c index dac564c25440..909f9b6698b5 100644 --- a/drivers/net/ethernet/ibm/emac/mal.c +++ b/drivers/net/ethernet/ibm/emac/mal.c | |||
| @@ -442,15 +442,11 @@ static int mal_poll(struct napi_struct *napi, int budget) | |||
| 442 | if (unlikely(mc->ops->peek_rx(mc->dev) || | 442 | if (unlikely(mc->ops->peek_rx(mc->dev) || |
| 443 | test_bit(MAL_COMMAC_RX_STOPPED, &mc->flags))) { | 443 | test_bit(MAL_COMMAC_RX_STOPPED, &mc->flags))) { |
| 444 | MAL_DBG2(mal, "rotting packet" NL); | 444 | MAL_DBG2(mal, "rotting packet" NL); |
| 445 | if (napi_reschedule(napi)) | 445 | if (!napi_reschedule(napi)) |
| 446 | mal_disable_eob_irq(mal); | ||
| 447 | else | ||
| 448 | MAL_DBG2(mal, "already in poll list" NL); | ||
| 449 | |||
| 450 | if (budget > 0) | ||
| 451 | goto again; | ||
| 452 | else | ||
| 453 | goto more_work; | 446 | goto more_work; |
| 447 | |||
| 448 | mal_disable_eob_irq(mal); | ||
| 449 | goto again; | ||
| 454 | } | 450 | } |
| 455 | mc->ops->poll_tx(mc->dev); | 451 | mc->ops->poll_tx(mc->dev); |
| 456 | } | 452 | } |
