net: stmmac: Rework coalesce timer and fix multi-queue races
authorJose Abreu <Jose.Abreu@synopsys.com>
Mon, 17 Sep 2018 08:22:56 +0000 (09:22 +0100)
committerDavid S. Miller <davem@davemloft.net>
Wed, 19 Sep 2018 02:48:08 +0000 (19:48 -0700)
commit8fce3331702316d4bcfeb0771c09ac75d2192bbc
treee01c361f59d89b5eb74e533f93c73c8bd7bf9bb5
parent5211da9ca526a5adddee1ccd078e6e33a583ab36
net: stmmac: Rework coalesce timer and fix multi-queue races

This follows David Miller advice and tries to fix coalesce timer in
multi-queue scenarios.

We are now using per-queue coalesce values and per-queue TX timer.

Coalesce timer default values was changed to 1ms and the coalesce frames
to 25.

Tested in B2B setup between XGMAC2 and GMAC5.

Signed-off-by: Jose Abreu <joabreu@synopsys.com>
Fixes: ce736788e8a ("net: stmmac: adding multiple buffers for TX")
Cc: Florian Fainelli <f.fainelli@gmail.com>
Cc: Neil Armstrong <narmstrong@baylibre.com>
Cc: Jerome Brunet <jbrunet@baylibre.com>
Cc: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
Cc: David S. Miller <davem@davemloft.net>
Cc: Joao Pinto <jpinto@synopsys.com>
Cc: Giuseppe Cavallaro <peppe.cavallaro@st.com>
Cc: Alexandre Torgue <alexandre.torgue@st.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/stmicro/stmmac/common.h
drivers/net/ethernet/stmicro/stmmac/stmmac.h
drivers/net/ethernet/stmicro/stmmac/stmmac_main.c
include/linux/stmmac.h