mlx4 driver stripping inner vlan from double-tagged frame

Hi,

I’m trying to send a frame that has two VLAN tags (two 0x8100 tags) out of a Mellanox ConnectX-3 40G NIC.

When tx-vlan-offload is turned on (which it is by default), I see the inner VLAN tag is missing when I sniff the frame on the wire, despite being present when the frame is sent out to the interface (as seen in tcpdump).

When I turn tx-vlan-offload off, then both VLAN tags are present on the wire as expected.

I’m using version 3.1-1.0.4 of the mlx4 driver.

Does anyone know why this is happening? Is it a bug in the driver? Is it a known issue?

Thanks!

See also HowTo Configure QinQ Encapsulation per VF in Linux (VST) for ConnectX-3 Pro https://community.mellanox.com/s/article/howto-configure-qinq-encapsulation-per-vf-in-linux--vst--for-connectx-3-pro

Ophir.

Hi

you can try the last driver Mellanox OFED Linux (MLNX_OFED) http://www.mellanox.com/page/products_dyn?product_family=26&mtag=linux_sw_drivers

in the release notes of MLNX_OFED 3.4-1.0.0.0 Release Notes http://www.mellanox.com/related-docs/prod_software/Mellanox_OFED_Linux_Release_Notes_3_4-1_0_0_0.pdf mentioned that added VST Q-in-Q feature.

VST Q-in-Q Added support for Q-in-Q encapsulation per VF in Linux (VST) for ConnectX-3 Pro adapter cards.

Thanks,

Talat