From: bugzilla@dpdk.org
To: dev@dpdk.org
Subject: [DPDK/ethdev Bug 1953] net/iavf: TX VLAN insertion offload has no effect on E810 in Double-VLAN-Mode (kernel iavf inserts fine on same PF)
Date: Tue, 09 Jun 2026 07:49:01 +0000 [thread overview]
Message-ID: <bug-1953-3@http.bugs.dpdk.org/> (raw)
http://bugs.dpdk.org/show_bug.cgi?id=1953
Bug ID: 1953
Summary: net/iavf: TX VLAN insertion offload has no effect on
E810 in Double-VLAN-Mode (kernel iavf inserts fine on
same PF)
Product: DPDK
Version: 26.03
Hardware: x86
OS: Linux
Status: UNCONFIRMED
Severity: critical
Priority: Normal
Component: ethdev
Assignee: dev@dpdk.org
Reporter: g.navinsrinivas@gmail.com
Target Milestone: ---
Created attachment 354
--> http://bugs.dpdk.org/attachment.cgi?id=354&action=edit
The logs, pcap for both DPDK 25.11 and 26.03 and behaviour difference with
Kernel vlan tagging
On an Intel E810 with the PF in Double‑VLAN‑Mode (DVM), an iavf VF bound to
vfio-pci does not insert a TX VLAN tag — frames egress untagged despite
tx_offload vlan_insert on + tx_vlan set (and with
insertion enabled / insertion_cap: L2TAG2). The in-tree kernel iavf on the same
PF / adjacent VF inserts the single C‑VLAN correctly (802.1Q on the wire).
Forcing inner/L2TAG1 in the PMD doesn't help
either. Reproduced with vanilla dpdk-testpmd on both DPDK 25.11 and 26.03.
Env: E810 fw 7.9.1 / nvm 4.90 / DDP "ICE OS Default Package 1.3.49.0"; host ice
on kernel 6.8.12‑pve; guest iavf 6.17. VF VLAN_V2 caps: ins_outer=0xc0000207
(TOGGLE|XOR|L2TAG2|{8100,88A8,9100}),
ins_inner=0x80000101 (TOGGLE|L2TAG1|8100), VF_OFFLOAD_VLAN(v1)=0. Logs/pcaps
attached (per-version + kernel contrast).
On an Intel E810 with the PF in Double-VLAN-Mode (DVM), an iavf VF bound to
vfio-pci does not insert a TX VLAN tag — frames egress untagged despite
tx_offload vlan_insert on + tx_vlan set (and with insertion enabled /
insertion_cap: L2TAG2). The in-tree kernel iavf on the same PF / adjacent VF
inserts the single C-VLAN correctly (802.1Q on the wire). Forcing inner/L2TAG1
in the PMD doesn't help either. Reproduced with vanilla dpdk-testpmd on both
DPDK 25.11 and 26.03.
Reproduction (testpmd):
dpdk-testpmd -a <vf_pci> --file-prefix=tp -l <cores> -- -i
--eth-peer=0,<peer_mac>
port stop 0
port config 0 tx_offload vlan_insert on
tx_vlan set 0 20
port start 0
set fwd txonly
start
- tcpdump on the peer: frames arrive as plain ethertype IPv4 — no 802.1Q / vlan
20.
- show port xstats: tx_good counts up (frames do leave the VF; no Tx error).
Expected: egress frames carry 802.1Q vlan 20.
Actual: egress frames are untagged; tx_good increments, no Tx error reported.
Ruled out: VF was trust on, spoofchk off, and the VLAN filter added via
rte_eth_dev_vlan_filter() (vlan offload: filter on) — no change. Same result on
25.11 and 26.03, and with the PMD forced to inner/L2TAG1. The kernel iavf on
the same PF (adjacent VF) inserts the tag correctly, so the PF/HW and VF config
are fine — only the DPDK iavf PMD insertion path produces no tag.
Environment: E810 fw 7.9.1 / nvm 4.90 / DDP "ICE OS Default Package 1.3.49.0";
host ice on kernel 6.8.12-pve; guest iavf 6.17. VF VLAN_V2 caps:
ins_outer=0xc0000207 (TOGGLE|XOR|L2TAG2|{8100,88A8,9100}), ins_inner=0x80000101
(TOGGLE|L2TAG1|8100), VF_OFFLOAD_VLAN(v1)=0. Logs/pcaps attached (per-version +
kernel contrast).
--
You are receiving this mail because:
You are the assignee for the bug.
reply other threads:[~2026-06-09 7:49 UTC|newest]
Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=bug-1953-3@http.bugs.dpdk.org/ \
--to=bugzilla@dpdk.org \
--cc=dev@dpdk.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox