Skip to content

Commit

Permalink
net: ethernet: mtk_eth_soc: reduce unnecessary interrupts
Browse files Browse the repository at this point in the history
Avoid rearming interrupt if napi_complete returns false

Signed-off-by: Felix Fietkau <nbd@nbd.name>
Signed-off-by: Ilya Lipnitskiy <ilya.lipnitskiy@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
  • Loading branch information
Felix Fietkau authored and David S. Miller committed Apr 23, 2021
1 parent 816ac3e commit 16769a8
Showing 1 changed file with 5 additions and 4 deletions.
9 changes: 5 additions & 4 deletions drivers/net/ethernet/mediatek/mtk_eth_soc.c
Original file line number Diff line number Diff line change
Expand Up @@ -1519,8 +1519,8 @@ static int mtk_napi_tx(struct napi_struct *napi, int budget)
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;
}
Expand Down Expand Up @@ -1553,8 +1553,9 @@ static int mtk_napi_rx(struct napi_struct *napi, int budget)
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;
}
Expand Down

0 comments on commit 16769a8

Please sign in to comment.