net: axienet: increase default TX ring size to 128
authorRobert Hancock <robert.hancock@calian.com>
Tue, 18 Jan 2022 21:41:32 +0000 (15:41 -0600)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 27 Jan 2022 10:05:33 +0000 (11:05 +0100)
commit 2d19c3fd80178160dd505ccd7fed1643831227a5 upstream.

With previous changes to make the driver handle the TX ring size more
correctly, the default TX ring size of 64 appears to significantly
bottleneck TX performance to around 600 Mbps on a 1 Gbps link on ZynqMP.
Increasing this to 128 seems to bring performance up to near line rate and
shouldn't cause excess bufferbloat (this driver doesn't yet support modern
byte-based queue management).

Fixes: 8a3b7a252dca9 ("drivers/net/ethernet/xilinx: added Xilinx AXI Ethernet driver")
Signed-off-by: Robert Hancock <robert.hancock@calian.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/net/ethernet/xilinx/xilinx_axienet_main.c

index 45a67ba2215ccbacc1abe731cbf9f5b68205f66d..2169417210c2b860f1074fbdeb84bb249f657911 100644 (file)
@@ -41,7 +41,7 @@
 #include "xilinx_axienet.h"
 
 /* Descriptors defines for Tx and Rx DMA */
-#define TX_BD_NUM_DEFAULT              64
+#define TX_BD_NUM_DEFAULT              128
 #define RX_BD_NUM_DEFAULT              1024
 #define TX_BD_NUM_MIN                  (MAX_SKB_FRAGS + 1)
 #define TX_BD_NUM_MAX                  4096