123456789101112131415161718192021222324252627282930313233343536373839 |
- From 16769a8923fad5a5377253bcd76b0e0d64976c73 Mon Sep 17 00:00:00 2001
- From: Felix Fietkau <[email protected]>
- Date: Thu, 22 Apr 2021 22:21:05 -0700
- Subject: [PATCH] net: ethernet: mtk_eth_soc: reduce unnecessary interrupts
- Avoid rearming interrupt if napi_complete returns false
- Signed-off-by: Felix Fietkau <[email protected]>
- Signed-off-by: Ilya Lipnitskiy <[email protected]>
- Signed-off-by: David S. Miller <[email protected]>
- ---
- drivers/net/ethernet/mediatek/mtk_eth_soc.c | 9 +++++----
- 1 file changed, 5 insertions(+), 4 deletions(-)
- --- a/drivers/net/ethernet/mediatek/mtk_eth_soc.c
- +++ b/drivers/net/ethernet/mediatek/mtk_eth_soc.c
- @@ -1540,8 +1540,8 @@ static int mtk_napi_tx(struct napi_struc
- if (status & MTK_TX_DONE_INT)
- return budget;
-
- - napi_complete(napi);
- - mtk_tx_irq_enable(eth, MTK_TX_DONE_INT);
- + if (napi_complete(napi))
- + mtk_tx_irq_enable(eth, MTK_TX_DONE_INT);
-
- return tx_done;
- }
- @@ -1574,8 +1574,9 @@ poll_again:
- remain_budget -= rx_done;
- goto poll_again;
- }
- - napi_complete(napi);
- - mtk_rx_irq_enable(eth, MTK_RX_DONE_INT);
- +
- + if (napi_complete(napi))
- + mtk_rx_irq_enable(eth, MTK_RX_DONE_INT);
-
- return rx_done + budget - remain_budget;
- }
|