mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2025-01-22 13:54:57 +08:00
fm10k: Do not assume budget will never be 0 for NAPI
The netpoll path will call napi->poll with a budget of 0 in order to clean the Tx rings only. This change updates the fm10k driver so that it will correctly support that instead of cleaning 1 Rx frame if a budget of 0 is received. Signed-off-by: Alexander Duyck <alexander.h.duyck@redhat.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
4212b54331
commit
59486329b4
@ -610,7 +610,7 @@ static bool fm10k_clean_rx_irq(struct fm10k_q_vector *q_vector,
|
|||||||
unsigned int total_bytes = 0, total_packets = 0;
|
unsigned int total_bytes = 0, total_packets = 0;
|
||||||
u16 cleaned_count = fm10k_desc_unused(rx_ring);
|
u16 cleaned_count = fm10k_desc_unused(rx_ring);
|
||||||
|
|
||||||
do {
|
while (likely(total_packets < budget)) {
|
||||||
union fm10k_rx_desc *rx_desc;
|
union fm10k_rx_desc *rx_desc;
|
||||||
|
|
||||||
/* return some buffers to hardware, one at a time is too slow */
|
/* return some buffers to hardware, one at a time is too slow */
|
||||||
@ -659,7 +659,7 @@ static bool fm10k_clean_rx_irq(struct fm10k_q_vector *q_vector,
|
|||||||
|
|
||||||
/* update budget accounting */
|
/* update budget accounting */
|
||||||
total_packets++;
|
total_packets++;
|
||||||
} while (likely(total_packets < budget));
|
}
|
||||||
|
|
||||||
/* place incomplete frames back on ring for completion */
|
/* place incomplete frames back on ring for completion */
|
||||||
rx_ring->skb = skb;
|
rx_ring->skb = skb;
|
||||||
|
Loading…
Reference in New Issue
Block a user