kernel_samsung_a53x/drivers/net/ethernet/amd
Raju Rangoju 6ac079c037 amd-xgbe: handle the corner-case during tx completion
[ 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>
2024-11-18 12:10:55 +01:00
..
xgbe amd-xgbe: handle the corner-case during tx completion 2024-11-18 12:10:55 +01:00
7990.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
7990.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
a2065.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
a2065.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
am79c961a.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
am79c961a.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
amd8111e.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
amd8111e.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
ariadne.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
ariadne.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
atarilance.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
au1000_eth.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
au1000_eth.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
declance.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
hplance.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
hplance.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
Kconfig Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
lance.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
Makefile Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
mvme147.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
ni65.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
ni65.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
nmclan_cs.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
pcnet32.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
sun3lance.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
sunlance.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00