Hi Ernesto, On Fri, 11 Jul 2025, Ernesto Ruffini wrote: > > Hi, > > We found a strange behavior of the E810 VLAN offload. > > We are running DPDK 24.11.2 with ice driver 1.15.4, firmware 4.60 and COMMS DDP 1.3.46 > >   > > The NIC receives an IPv4/UDP packet inside VLAN 300. > > If we run dpdk-testpmd with a single queue, everything seems fine: > >   > > dpdk-testpmd -a 0000:4b:00.0 -c ffffff -n 8 -- -i > >   > > set verbose 5 > > port stop 0 > > port config 0 rx_offload vlan_strip on > > port start 0 > > start > >   > > And the packet is correctly displayed: > >   src=08:02:03:04:05:06 - dst=00:1A:CA:01:00:96 - pool=mb_pool_0 - type=0x0800 - length=142 - nb_segs=1 - VLAN tci=0x12c - hw ptype: L2_ETHER L3_IPV4_EXT_UNKNOWN L4_UDP  - sw ptype: > L2_ETHER L3_IPV4 L4_UDP  - l2_len=14 - l3_len=20 - l4_len=8 - Destination UDP port=5398 - Receive queue=0x0 > >   ol_flags: RTE_MBUF_F_RX_VLAN RTE_MBUF_F_RX_L4_CKSUM_GOOD RTE_MBUF_F_RX_IP_CKSUM_GOOD RTE_MBUF_F_RX_VLAN_STRIPPED RTE_MBUF_F_RX_OUTER_L4_CKSUM_GOOD > >   > > But if we use a different number of queues: > >   > > dpdk-testpmd -a 0000:4b:00.0 -c ffffff -n 8 -- -i --rxq=4 --txq=4 It would be helpful to enable debug logs with EAL argument --log-level='.*',8 so that one can see which 'rx_pkt_burst' method gets selected by the driver. Then one can inspect the implementation of that particular function to see whether offloads are handled correctly. Thank you. > >   > > The VLAN is in fact removed, but there is no evidence of that: > >   > >   src=08:02:03:04:05:06 - dst=00:1A:CA:01:00:96 - pool=mb_pool_0 - type=0x0800 - length=142 - nb_segs=1 - RSS hash=0xfae3080 - RSS queue=0x0 - hw ptype: L2_ETHER L3_IPV4_EXT_UNKNOWN > L4_UDP  - sw ptype: L2_ETHER L3_IPV4 L4_UDP  - l2_len=14 - l3_len=20 - l4_len=8 - Destination UDP port=5398 - Receive queue=0x0 > >   ol_flags: RTE_MBUF_F_RX_RSS_HASH RTE_MBUF_F_RX_L4_CKSUM_GOOD RTE_MBUF_F_RX_IP_CKSUM_GOOD RTE_MBUF_F_RX_OUTER_L4_CKSUM_GOOD > >   > > There was a bug in some previous versions of DPDK about E810 and VLAN offload, but it was fixed. > > Are we doing something wrong or is there a problem with the driver? > >   > > Thank you > >                Ernesto > >   > > >