[dpdk-users] VLAN offload on e1000 NIC

Cody Doucette doucette at bu.edu
Sun May 29 01:54:59 CEST 2016

I'm trying to use DPDK to disable VLAN (802.1q) hardware offloading on an
Intel PRO/1000 MT Desktop (82540EM) adapter, but haven't been able to do so.

My setup is an Ubuntu 16.04 host running an Ubuntu 14.04 VM (using
Vagrant/VirtualBox). I have three host-only adapters that connect the host
and the VM, and on the VM eth1 and eth2 are DPDK-bound and eth3 is
kernel-bound. All are using separate 82540EM adapters. I'm generating VLAN
packets on the host using ostinato and sending them to the VM.

The kernel-bound interface receives the packet with the VLAN header intact,
but the DPDK interfaces seem to strip the VLAN.

I've tried disabling the VLAN stripping with the rxmode configuration in a
call to rte_eth_dev_configure(), and I've also tried disabling it with a
call to rte_eth_dev_set_vlan_offload(). Neither seem to work.

When I call rte_eth_dev_get_vlan_offload() to see how the device is
configured, I always get the value 0 -- before trying to disable offloading
and after trying to disable it.

Something's not adding up for me here -- why is the VLAN offload status 0
(instead of one of the ETH_VLAN_*_OFFLOAD flags), but the VLAN tag is
removed? Perhaps I have misunderstood something about this kind of NIC or
how to configure it. Thanks in advance for any help!


More information about the users mailing list