OSDN Git Service

net: enetc: increase RX ring default size
authorVladimir Oltean <vladimir.oltean@nxp.com>
Wed, 31 Mar 2021 20:08:56 +0000 (23:08 +0300)
committerDavid S. Miller <davem@davemloft.net>
Wed, 31 Mar 2021 21:57:44 +0000 (14:57 -0700)
As explained in the XDP_TX patch, when receiving a burst of frames with
the XDP_TX verdict, there is a momentary dip in the number of available
RX buffers. The system will eventually recover as TX completions will
start kicking in and refilling our RX BD ring again. But until that
happens, we need to survive with as few out-of-buffer discards as
possible.

This increases the memory footprint of the driver in order to avoid
discards at 2.5Gbps line rate 64B packet sizes, the maximum speed
available for testing on 1 port on NXP LS1028A.

Signed-off-by: Vladimir Oltean <vladimir.oltean@nxp.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/freescale/enetc/enetc.h

index 864da96..d0619fc 100644 (file)
@@ -71,7 +71,7 @@ struct enetc_xdp_data {
        int xdp_tx_in_flight;
 };
 
-#define ENETC_RX_RING_DEFAULT_SIZE     512
+#define ENETC_RX_RING_DEFAULT_SIZE     2048
 #define ENETC_TX_RING_DEFAULT_SIZE     256
 #define ENETC_DEFAULT_TX_WORK          (ENETC_TX_RING_DEFAULT_SIZE / 2)