Browse Source

ixgbevf: Fix handling of NAPI budget when multiple queues are enabled per vector

This is the same patch as for ixgbe but applied differently according to
busy polling.  See commit 5d6002b7b822c74 ("ixgbe: Fix handling of NAPI
budget when multiple queues are enabled per vector")

Signed-off-by: William Dauchy <william@gandi.net>
Tested-by: Phil Schmitt <phillip.j.schmitt@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
William Dauchy 10 năm trước cách đây
mục cha
commit
d0f71afffa

+ 2 - 0
drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c

@@ -1016,6 +1016,8 @@ static int ixgbevf_poll(struct napi_struct *napi, int budget)
 	ixgbevf_for_each_ring(ring, q_vector->tx)
 	ixgbevf_for_each_ring(ring, q_vector->tx)
 		clean_complete &= ixgbevf_clean_tx_irq(q_vector, ring);
 		clean_complete &= ixgbevf_clean_tx_irq(q_vector, ring);
 
 
+	if (budget <= 0)
+		return budget;
 #ifdef CONFIG_NET_RX_BUSY_POLL
 #ifdef CONFIG_NET_RX_BUSY_POLL
 	if (!ixgbevf_qv_lock_napi(q_vector))
 	if (!ixgbevf_qv_lock_napi(q_vector))
 		return budget;
 		return budget;