[PATCH dpdk v3] net: fix VLAN packet type
Robin Jarry
rjarry at redhat.com
Thu Apr 23 13:11:11 CEST 2026
Kevin Traynor, Apr 23, 2026 at 12:59:
> Setting pkt_type later has some implications for early returns (now i
> notice that's present in v3 too)
>
> Would this work ?
>
> @@ -358,10 +358,12 @@ uint32_t rte_net_get_ptype(const struct rte_mbuf *m,
> struct rte_vlan_hdr vh_copy;
>
> + if (vlan_depth == 0) {
> + pkt_type =
> + proto ==
> rte_cpu_to_be_16(RTE_ETHER_TYPE_VLAN) ?
> + RTE_PTYPE_L2_ETHER_VLAN :
> + RTE_PTYPE_L2_ETHER_QINQ;
> + }
> if (++vlan_depth > RTE_NET_VLAN_MAX_DEPTH)
> return 0;
> - pkt_type |=
> - proto == rte_cpu_to_be_16(RTE_ETHER_TYPE_VLAN) ?
> - RTE_PTYPE_L2_ETHER_VLAN :
> - RTE_PTYPE_L2_ETHER_QINQ;
> vh = rte_pktmbuf_read(m, off, sizeof(*vh), &vh_copy);
> if (unlikely(vh == NULL))
Yes, that works. I'll send a v4.
More information about the stable
mailing list