6ac079c037
[ Upstream commit 7121205d5330c6a3cb3379348886d47c77b78d06 ] The existing implementation uses software logic to accumulate tx completions until the specified time (1ms) is met and then poll them. However, there exists a tiny gap which leads to a race between resetting and checking the tx_activate flag. Due to this the tx completions are not reported to upper layer and tx queue timeout kicks-in restarting the device. To address this, introduce a tx cleanup mechanism as part of the periodic maintenance process. Fixes: c5aa9e3b8156 ("amd-xgbe: Initial AMD 10GbE platform driver") Acked-by: Shyam Sundar S K <Shyam-sundar.S-k@amd.com> Signed-off-by: Raju Rangoju <Raju.Rangoju@amd.com> Reviewed-by: Wojciech Drewek <wojciech.drewek@intel.com> Signed-off-by: Paolo Abeni <pabeni@redhat.com> Signed-off-by: Sasha Levin <sashal@kernel.org> |
||
---|---|---|
.. | ||
Makefile | ||
xgbe-common.h | ||
xgbe-dcb.c | ||
xgbe-debugfs.c | ||
xgbe-desc.c | ||
xgbe-dev.c | ||
xgbe-drv.c | ||
xgbe-ethtool.c | ||
xgbe-i2c.c | ||
xgbe-main.c | ||
xgbe-mdio.c | ||
xgbe-pci.c | ||
xgbe-phy-v1.c | ||
xgbe-phy-v2.c | ||
xgbe-platform.c | ||
xgbe-ptp.c | ||
xgbe.h |