From: Alexander Duyck <[email protected]> At the current maximum of 126 us the minimum bulk-mode interrupt rate is ~7936 interrupts/s. Under sustained full-line-rate bulk RX traffic this is low enough that descriptor ring starvation can occur before the next interrupt fires.
Lower IXGBE_ITR_ADAPTIVE_MAX_USECS from 126 to 84 us. This raises the minimum rate to ~11905 interrupts/s (~12K ints/s), providing enough headroom to drain the ring before it wraps. Signed-off-by: Alexander Duyck <[email protected]> Signed-off-by: Aleksandr Loktionov <[email protected]> --- drivers/net/ethernet/intel/ixgbe/ixgbe.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/net/ethernet/intel/ixgbe/ixgbe.h b/drivers/net/ethernet/intel/ixgbe/ixgbe.h index 9b82175..1a7fd90 100644 --- a/drivers/net/ethernet/intel/ixgbe/ixgbe.h +++ b/drivers/net/ethernet/intel/ixgbe/ixgbe.h @@ -475,7 +475,7 @@ static inline unsigned int ixgbe_rx_pg_order(struct ixgbe_ring *ring) #define IXGBE_ITR_ADAPTIVE_MIN_INC 2 #define IXGBE_ITR_ADAPTIVE_MIN_USECS 10 -#define IXGBE_ITR_ADAPTIVE_MAX_USECS 126 +#define IXGBE_ITR_ADAPTIVE_MAX_USECS 84 #define IXGBE_ITR_ADAPTIVE_LATENCY 0x80 #define IXGBE_ITR_ADAPTIVE_BULK 0x00 -- 2.52.0
