Disable TSO in mv643xx_eth driver by default (Closes: #764162).

This change is eventually destined for stable, but take a version of it
manually for now.

svn path=/dists/sid/linux/; revision=22037
This commit is contained in:
Ian Campbell 2014-11-04 19:22:45 +00:00
parent 822227f779
commit 824ba5e0f9
3 changed files with 61 additions and 0 deletions

7
debian/changelog vendored
View File

@ -1,3 +1,10 @@
linux (3.16.7-2) UNRELEASED; urgency=low
[ Ian Campbell ]
* Disable TSO in mv643xx_eth driver by default (Closes: #764162).
-- Ian Campbell <ijc@debian.org> Tue, 04 Nov 2014 19:18:38 +0000
linux (3.16.7-1) unstable; urgency=medium
* New upstream stable update:

View File

@ -0,0 +1,53 @@
From patchwork Sat Nov 1 15:30:20 2014
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Subject: [1/1] net: mv643xx_eth: Make TSO disabled by default
From: Ezequiel Garcia <ezequiel.garcia@free-electrons.com>
X-Patchwork-Id: 405792
Message-Id: <1414855820-15094-2-git-send-email-ezequiel.garcia@free-electrons.com>
To: <netdev@vger.kernel.org>, David Miller <davem@davemloft.net>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>,
Gregory Clement <gregory.clement@free-electrons.com>,
Tawfik Bayouk <tawfik@marvell.com>, Lior Amsalem <alior@marvell.com>,
Nadav Haklai <nadavh@marvell.com>,
Ezequiel Garcia <ezequiel.garcia@free-electrons.com>
Date: Sat, 1 Nov 2014 12:30:20 -0300
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@gmail.com>
Reported-by: Julien D'Ascenzio <jdascenzio@yahoo.fr>
Signed-off-by: Ezequiel Garcia <ezequiel.garcia@free-electrons.com>
---
drivers/net/ethernet/marvell/mv643xx_eth.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/net/ethernet/marvell/mv643xx_eth.c b/drivers/net/ethernet/marvell/mv643xx_eth.c
index b151a94..8b72780 100644
--- a/drivers/net/ethernet/marvell/mv643xx_eth.c
+++ b/drivers/net/ethernet/marvell/mv643xx_eth.c
@@ -3110,11 +3110,11 @@ static int mv643xx_eth_probe(struct platform_device *pdev)
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;

View File

@ -145,6 +145,7 @@ bugfix/all/net-sctp-fix-skb_over_panic-when-receiving-malformed.patch
bugfix/all/net-sctp-fix-panic-on-duplicate-ASCONF-chunks.patch
bugfix/all/net-sctp-fix-remote-memory-pressure-from-excessive-q.patch
bugfix/all/mnt-Prevent-pivot_root-from-creating-a-loop-in-the-m.patch
bugfix/all/net-mv643xx-disable-tso-by-default.patch
# memfd_create() & kdbus backport
features/all/kdbus/mm-allow-drivers-to-prevent-new-writable-mappings.patch