net: stmmac: increase TX coalesce timer to 5ms
authorChristian Marangi <ansuelsmth@gmail.com>
Wed, 18 Oct 2023 12:35:50 +0000 (14:35 +0200)
committerPaolo Abeni <pabeni@redhat.com>
Thu, 19 Oct 2023 13:41:31 +0000 (15:41 +0200)
Commit 8fce33317023 ("net: stmmac: Rework coalesce timer and fix
multi-queue races") decreased the TX coalesce timer from 40ms to 1ms.

This caused some performance regression on some target (regression was
reported at least on ipq806x) in the order of 600mbps dropping from
gigabit handling to only 200mbps.

The problem was identified in the TX timer getting armed too much time.
While this was fixed and improved in another commit, performance can be
improved even further by increasing the timer delay a bit moving from
1ms to 5ms.

The value is a good balance between battery saving by prevending too
much interrupt to be generated and permitting good performance for
internet oriented devices.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
drivers/net/ethernet/stmicro/stmmac/common.h

index 1e996c29043dcbdc40bfb1e030f93b70d989e4a4..e3f650e88f82f927f0dcf95748fbd10c14c30cbe 100644 (file)
@@ -293,7 +293,7 @@ struct stmmac_safety_stats {
 #define MIN_DMA_RIWT           0x10
 #define DEF_DMA_RIWT           0xa0
 /* Tx coalesce parameters */
-#define STMMAC_COAL_TX_TIMER   1000
+#define STMMAC_COAL_TX_TIMER   5000
 #define STMMAC_MAX_COAL_TX_TICK        100000
 #define STMMAC_TX_MAX_FRAMES   256
 #define STMMAC_TX_FRAMES       25