mirror of
https://github.com/openwrt/openwrt.git
synced 2024-12-20 06:08:08 +00:00
kirkwood: disable TSO on the ethernet device by default, fixes data corruption issues (#19735)
Signed-off-by: Felix Fietkau <nbd@openwrt.org> SVN-Revision: 45776
This commit is contained in:
parent
52ec6374d4
commit
564fdae968
35
target/linux/kirkwood/patches-3.18/200-disable-tso.patch
Normal file
35
target/linux/kirkwood/patches-3.18/200-disable-tso.patch
Normal file
@ -0,0 +1,35 @@
|
|||||||
|
From: Ezequiel Garcia <ezequiel.garcia@free-electrons.com>
|
||||||
|
Subject: [PATCH] net: mv643xx_eth: Make TSO disabled by default
|
||||||
|
|
||||||
|
Data corruption has been observed to be produced by TSO. For instance,
|
||||||
|
accessing files on a NFS-server with TSO enabled results in different data
|
||||||
|
transferred each time.
|
||||||
|
|
||||||
|
This has been observed only on Kirkwood platforms, i.e. with the mv643xx_eth
|
||||||
|
driver. Same tests on platforms using the mvneta ethernet driver have
|
||||||
|
passed without errors.
|
||||||
|
|
||||||
|
Make TSO disabled by default for now, until we can found a proper fix
|
||||||
|
for the regression.
|
||||||
|
|
||||||
|
Fixes: 3ae8f4e0b98 ('net: mv643xx_eth: Implement software TSO')
|
||||||
|
Reported-by: Slawomir Gajzner <slawomir.gajzner <at> gmail.com>
|
||||||
|
Reported-by: Julien D'Ascenzio <jdascenzio <at> yahoo.fr>
|
||||||
|
Signed-off-by: Ezequiel Garcia <ezequiel.garcia <at> free-electrons.com>
|
||||||
|
---
|
||||||
|
--- a/drivers/net/ethernet/marvell/mv643xx_eth.c
|
||||||
|
+++ b/drivers/net/ethernet/marvell/mv643xx_eth.c
|
||||||
|
@@ -3112,11 +3112,11 @@ static int mv643xx_eth_probe(struct plat
|
||||||
|
dev->watchdog_timeo = 2 * HZ;
|
||||||
|
dev->base_addr = 0;
|
||||||
|
|
||||||
|
- dev->features = NETIF_F_SG | NETIF_F_IP_CSUM | NETIF_F_TSO;
|
||||||
|
+ dev->features = NETIF_F_SG | NETIF_F_IP_CSUM;
|
||||||
|
dev->vlan_features = dev->features;
|
||||||
|
|
||||||
|
dev->features |= NETIF_F_RXCSUM;
|
||||||
|
- dev->hw_features = dev->features;
|
||||||
|
+ dev->hw_features = dev->features | NETIF_F_TSO;
|
||||||
|
|
||||||
|
dev->priv_flags |= IFF_UNICAST_FLT;
|
||||||
|
dev->gso_max_segs = MV643XX_MAX_TSO_SEGS;
|
Loading…
Reference in New Issue
Block a user