From: Vladislav Yasevich <[email protected]>
Date: Mon, 25 Aug 2014 10:34:47 -0400

> I've recently ran across something rather interesting when testing vlans
> from inside VMs.  In some scenarios I was getting awfull thruput.
> Some debugging uncovered a very scary packet corruption.  I was
> seeing packets that had original TSO length as IP total length
> and their ip checksum was 0.  This was with e1000e driver.
> 
> A bit more debugging uncovered an assumption made by that driver
> that skb->protocol will contain l3 protocol information.  This
> was not the case in my setup since I manually turned off vlan
> tx acceleration for the device.  This caused the driver to not
> initialize the tso information correctly and resulted in
> corrupt TSO frames on the wire.
> 
> I decided to do some auditing of the usage of skb->protocols
> in the drivers.  Out of all the drivers, the included 8 appear
> to be effected.  They all allow user to control vlan acceleration
> settings, all support TSO on vlan devices, and all use
> skb->protocol to decide how to encode TSO information.  Some
> also have similar problems when initializing hw checksum information.
> On such device, it is simple enough to reproduce the issue.
> Simply turn off TX VLAN acceleration on the device, create a vlan,
> and run you favorite network performance tool.
> 
> There is 1 driver I ran across that I belive will trigger a BUG
> in the system when used with vlans.  That driver is tile/tilepro.c
> I have not changed it in this patch set and would hope that
> the maintainer has time to look at it.
> 
> V2: Fix i40ev using the wrong function name.  Full build.

Applied, thanks.

------------------------------------------------------------------------------
Slashdot TV.  
Video for Nerds.  Stuff that matters.
http://tv.slashdot.org/
_______________________________________________
E1000-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/e1000-devel
To learn more about Intel&#174; Ethernet, visit 
http://communities.intel.com/community/wired

Reply via email to