diff options
| author | Michael Chan <michael.chan@broadcom.com> | 2016-12-29 12:13:32 -0500 |
|---|---|---|
| committer | David S. Miller <davem@davemloft.net> | 2016-12-29 14:37:23 -0500 |
| commit | e7b9569102995ebc26821789628eef45bd9840d8 (patch) | |
| tree | efb874eb88f427d5192816e5d0ac1b7be6c91fe4 | |
| parent | b356a2e729cec145a648d22ba5686357c009da25 (diff) | |
| download | cachepc-linux-e7b9569102995ebc26821789628eef45bd9840d8.tar.gz cachepc-linux-e7b9569102995ebc26821789628eef45bd9840d8.zip | |
bnxt_en: Use napi_complete_done()
For better busy polling and GRO support. Do not re-arm IRQ if
napi_complete_done() returns false.
Signed-off-by: Michael Chan <michael.chan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
| -rw-r--r-- | drivers/net/ethernet/broadcom/bnxt/bnxt.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/net/ethernet/broadcom/bnxt/bnxt.c b/drivers/net/ethernet/broadcom/bnxt/bnxt.c index b53f958ffcb8..3fbc8427be2e 100644 --- a/drivers/net/ethernet/broadcom/bnxt/bnxt.c +++ b/drivers/net/ethernet/broadcom/bnxt/bnxt.c @@ -1778,8 +1778,9 @@ static int bnxt_poll(struct napi_struct *napi, int budget) break; if (!bnxt_has_work(bp, cpr)) { - napi_complete(napi); - BNXT_CP_DB_REARM(cpr->cp_doorbell, cpr->cp_raw_cons); + if (napi_complete_done(napi, work_done)) + BNXT_CP_DB_REARM(cpr->cp_doorbell, + cpr->cp_raw_cons); break; } } |
