Hi, On Fri, May 15, 2020 at 11:12:27AM +0000, Yan, Xiaoping (NSB - CN/Hangzhou) wrote: > Hi, > > I'm using i40e vf, dpdk 18.11, x86_64 CPU (rx function in use is > i40e_recv_scattered_pkts_vec_avx2) > When enable hw vlan strip: > > * If packet fit in one mbuf segment, the vlan_tci field is correct > * If packets are stored in several mbuf segment, the vlan_tci of last > segment is correct, vlan_tci of other segments are invalid > > It seems i40e_recv_scattered_pkts has correctly set the vlan_tci, by calling > i40e_rxd_to_vlan_tci(first_seg, &rxd); > > Is this a bug in i40e_recv_scattered_pkts_vec_avx2? > (I didn't find setting vlan_tci for first segment, but it's a bit difficult > for me to understand codes in i40e_recv_scattered_pkts_vec_avx2, so I'm not > quite sure) > I checked the latest dpdk version 20.02 > http://lxr.dpdk.org/dpdk/latest/source/drivers/net/i40e/i40e_rxtx_vec_avx2.c#L791 > But seems no change for this. > > Any comment please? > [...]
I don't know about the i40e driver, but I can confirm that the vlan tci flag should be in the first segment, and not in the next ones. I suggest to CC i40e driver maintainers. Regards, Olivier