[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#764162: linux-image-3.16-2-kirkwood: [regression 3.14->3.16] file data corruption, via network



On Fri, 2014-10-31 at 14:29 +0100, Julien D'Ascenzio wrote:
> Le vendredi 31 octobre 2014 à 09:50 +0000, Ian Campbell a écrit :
> > On Sun, 2014-10-19 at 14:27 +0100, Ian Campbell wrote:
> > > > You could inactivate this feature manually with:
> > > > ethtool -K eth0 tso off
> > > > 
> > > > I'm in contact with the developer of this feature. Tell me if this 
> > > > command resolve your problem
> > > 
> > > Excellent, please let us know how you get on (feel free to CC the bug
> > > too if you want).
> > 
> > Did you make any progress with the developer?
> > 
> > In the changes to this driver since v3.16 I see
> > commit 817dbfa5d1bc276a72c1a577310382008e8aca0a
> > Author: Vlad Yasevich <vyasevich@gmail.com>
> > Date:   Mon Aug 25 10:34:54 2014 -0400
> > 
> >     mvneta: Fix TSO and checksum for non-acceleration vlan traffic
> > 
> > which might be potentially interesting, except no one on this bug has
> > mentioned VLANs at any point.
> > 
> > I don't see anything else of interest.
> > 
> > Ian.
> > 
> 
> I don't have more information. They seems not to understand why there
> are data corrupt with this soc. The only solution at this time is to
> inactivate tso or apply this patch, which makes TSO disabled by default:

I've now managed to update my qnap box too and can trivially see file
corruption over NFS. Unless anyone has any ideas or suggested fixes I'm
going to apply this patch to disable TSO by default to the Debian
kernel.

> 
> diff --git a/drivers/net/ethernet/marvell/mv643xx_eth.c
> b/drivers/net/ethernet/marvell/mv643xx_eth.c
> index 693b5b5..8e6df75 100644
> --- a/drivers/net/ethernet/marvell/mv643xx_eth.c
> +++ b/drivers/net/ethernet/marvell/mv643xx_eth.c
> @@ -3113,11 +3113,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;
> 
> I CC my contact
> 
> Julien D'Ascenzio
> 
> 


Reply to: