Tuesday, July 30, 2019 12:20 PM, Viacheslav Ovsiienko: > Subject: [dpdk-dev] [PATCH v3] net/mlx5: add workaround for VLAN in > virtual machine > > On some virtual setups (particularly on ESXi) when we have SR-IOV and E- > Switch enabled there is the problem to receive VLAN traffic on VF interfaces. > The NIC driver in ESXi hypervisor does not setup E-Switch vport setting > correctly and VLAN traffic targeted to VF is dropped. > > The patch provides the temporary workaround - if the rule containing the > VLAN pattern is being installed for VF the VLAN network interface over VF is > created, like the command does: > > ip link add link vf.if name mlx5.wa.1.100 type vlan id 100 > > The PMD in DPDK maintains the database of created VLAN interfaces for > each existing VF and requested VLAN tags. When all of the RTE Flows using > the given VLAN tag are removed the created VLAN interface with this VLAN > tag is deleted. > > The name of created VLAN interface follows the format: > > evmlx.d1.d2, where d1 is VF interface ifindex, d2 - VLAN ifindex > > Implementation limitations: > > - mask in rules is ignored, rule must specify VLAN tags exactly, > no wildcards (which are implemented by the masks) are allowed > > - virtual environment is detected via rte_hypervisor() call, > and the type of hypervisor is checked. Currently we engage > the workaround for ESXi and unrecognized hypervisors (which > always happen on platforms other than x86 - it means workaround > applied for the Flow over PCI VF). There are no confirmed data > the other hypervisors (HyperV, Qemu) need this workaround, > we are trying to reduce the list of configurations on those > workaround should be applied. > > Signed-off-by: Viacheslav Ovsiienko <viachesl...@mellanox.com> > Acked-by: Matan Azrad <ma...@mellanox.com>
Acked-by: Shahaf Shuler <shah...@mellanox.com>