[dpdk-dev] [PATCH v3] net/mlx5: add workaround for VLAN in virtual machine
Shahaf Shuler
shahafs at mellanox.com
Wed Jul 31 08:14:24 CEST 2019
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 <viacheslavo at mellanox.com>
> Acked-by: Matan Azrad <matan at mellanox.com>
Acked-by: Shahaf Shuler <shahafs at mellanox.com>
More information about the dev
mailing list