I believe you need the latest version of the firmware and the operations are 
described in the xl710 datasheet that was just released. Google for "xl710 
datasheet" and you should find one dated September 2017.

Todd Fujinaka
Software Application Engineer
Datacenter Engineering Group
Intel Corporation
todd.fujin...@intel.com
(503) 712-4565


-----Original Message-----
From: Alexander Duyck [mailto:alexander.du...@gmail.com] 
Sent: Tuesday, September 19, 2017 8:43 AM
To: Stefan Bühler <bueh...@cert.uni-stuttgart.de>
Cc: e1000-devel@lists.sourceforge.net
Subject: Re: [E1000-devel] i40e nested VLANs/Q-in-Q/txvlan broken

On Tue, Sep 19, 2017 at 2:42 AM, Stefan Bühler <bueh...@cert.uni-stuttgart.de> 
wrote:
> Hi Alex,
>
> On 09/19/2017 01:52 AM, Alexander Duyck wrote:
>> On Mon, Sep 18, 2017 at 9:45 AM, Stefan Bühler 
>> <bueh...@cert.uni-stuttgart.de> wrote:
>>> Hi,
>>>
>>> I've got an X710 ethernet controller; and when I add nested VLANs 
>>> the "inner" tag gets lost unless I disable the txvlan feature 
>>> (`ethtool -K
>>> ens1f0 txvlan off`).
>>>
>>> This is my setup:
>>>
>>> /sbin/ip link add link ens1f0 name vlan12 type vlan protocol 802.1Q 
>>> id 12 /sbin/brctl addif intern vlan12 /sbin/ip link set dev vlan12 
>>> up /sbin/ip link add link vlan12 name vlan152 type vlan protocol 
>>> 802.1ad id 152 /sbin/brctl addif intern vlan152 /sbin/ip link set 
>>> dev vlan152 up
>>>
>>> Frames send on vlan152 will only show up in vlan12 on the other end 
>>> without the 802.1ad tag.
>>>
>>> If the hardware doesn't support this, maybe it could be emulated in 
>>> software?  Or could I get at least some big warnings somewhere?  Is 
>>> this a (publicly) known bug?
>>>
>>> I somehow doubt many people are able to track this bug down if they 
>>> hit it in the wild, but maybe not many people are using 802.1ad in 
>>> the first place...
>>>
>>> Are there any estimates how badly `txvlan` is needed for 10G?
>>>
>>> cheers,
>>> Stefan
>>>
>>> ---
>>>
>>> # uname -a
>>> Linux prowler 4.9.0-3-amd64 #1 SMP Debian 4.9.30-2+deb9u3 
>>> (2017-08-06) x86_64 GNU/Linux # lspci -s 02:00.0 -v
>>> 02:00.0 Ethernet controller: Intel Corporation Ethernet Controller X710 for 
>>> 10GbE SFP+ (rev 01)
>>>         Subsystem: Intel Corporation Ethernet Converged Network Adapter 
>>> X710-4
>>>         Physical Slot: 1
>>>         Flags: bus master, fast devsel, latency 0, IRQ 26, NUMA node 0
>>>         Memory at 90800000 (64-bit, prefetchable) [size=8M]
>>>         Memory at 93000000 (64-bit, prefetchable) [size=32K]
>>>         Expansion ROM at fb280000 [disabled] [size=512K]
>>>         Capabilities: [40] Power Management version 3
>>>         Capabilities: [50] MSI: Enable- Count=1/1 Maskable+ 64bit+
>>>         Capabilities: [70] MSI-X: Enable+ Count=129 Masked-
>>>         Capabilities: [a0] Express Endpoint, MSI 00
>>>         Capabilities: [e0] Vital Product Data
>>>         Capabilities: [100] Advanced Error Reporting
>>>         Capabilities: [140] Device Serial Number [...]
>>>         Capabilities: [150] Alternative Routing-ID Interpretation (ARI)
>>>         Capabilities: [160] Single Root I/O Virtualization (SR-IOV)
>>>         Capabilities: [1a0] Transaction Processing Hints
>>>         Capabilities: [1b0] Access Control Services
>>>         Capabilities: [1d0] #19
>>>         Kernel driver in use: i40e
>>>         Kernel modules: i40e
>>
>> Hi Sefan,
>>
>> You might want to check and see what version of the firmware you are 
>> running by getting the firmware version via "ethtool -i" for the 
>> interface in question. My understanding is that some older firmware 
>> versions didn't handle double tagging correctly. You may find that 
>> updating the firmware will help to improve the behavior when handling 
>> Q-in-Q packets.
>
> I indeed didn't have the latest firmware, but the one before.  I 
> updated the firmware, but neither a module reload (which already 
> showed the new firmware version) nor a full reboot fixed it; I still 
> need to disable txvlan.
>
> cheers,
> Stefan
>
> ---
>
> Before:
> # ethtool -i ens1f0
> driver: i40e
> version: 1.6.16-k
> firmware-version: 5.05 0x80002919 1.1313.0
> expansion-rom-version:
> bus-info: 0000:02:00.0
> supports-statistics: yes
> supports-test: yes
> supports-eeprom-access: yes
> supports-register-dump: yes
> supports-priv-flags: yes
>
> After:
> # ethtool -i ens1f0
> driver: i40e
> version: 1.6.16-k
> firmware-version: 6.01 0x800034af 1.1747.0
> expansion-rom-version:
> bus-info: 0000:02:00.0
> supports-statistics: yes
> supports-test: yes
> supports-eeprom-access: yes
> supports-register-dump: yes
> supports-priv-flags: yes

So the driver version is a little old and doesn't include a fix for 802.1ad 
VLANs that we are planning to push to the upstream kernel. The plan is to push 
the fix to Dave Miller's net-next tree in the near future. You can find the fix 
in patch form online currently at:
http://patchwork.ozlabs.org/patch/804626/

You might want to try downloading the latest version of the i40e driver from 
e1000.sf.net as it should include the fix. If that still has the issue please 
let the list know and I can work with the Intel validation teams to have a bug 
filed to address this since it is something that should work with the latest 
versions of the driver and firmware.

- Alex

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most engaging tech 
sites, Slashdot.org! http://sdm.link/slashdot 
_______________________________________________
E1000-devel mailing list
E1000-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/e1000-devel
To learn more about Intel&#174; Ethernet, visit 
http://communities.intel.com/community/wired
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
E1000-devel mailing list
E1000-devel@lists.sourceforge.net
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