Commit 53e50a6ec24d ("Merge branch 'mlxsw-Add-VxLAN-support'") added mlxsw support for VxLAN when the VxLAN device was enslaved to VLAN-unaware bridges. This patchset extends mlxsw to also support VxLAN with VLAN-aware bridges. With VLAN-aware bridges, the VxLAN device's VNI is mapped to the VLAN that is configured as 'pvid untagged' on the corresponding bridge port. To prevent ambiguity, mlxsw forbids configurations in which the same VLAN is configured as 'pvid untagged' on multiple VxLAN devices. Patches #1-#2 add the necessary APIs in mlxsw and the bridge driver. Patches #3-#4 perform small refactoring in order to prepare mlxsw for VLAN-aware support. Patch #5 finally enables the enslavement of VxLAN devices to a VLAN-aware bridge. Among other things, it extends mlxsw to handle switchdev notifications about VLAN add / delete on a VxLAN device enslaved to an offloaded VLAN-aware bridge. Patches #6-#8 add selftests to test the new functionality. Ido Schimmel (8): net: bridge: Extend br_vlan_get_pvid() for bridge ports mlxsw: spectrum_fid: Add API to lookup 802.1Q FIDs without creating them mlxsw: spectrum_switchdev: Unify VxLAN leave function mlxsw: spectrum_switchdev: Prepare function for VLAN-aware bridges mlxsw: spectrum: Enable VxLAN enslavement to VLAN-aware bridges selftests: mlxsw: Consider VLAN-aware bridges as valid selftests: mlxsw: Add a test for VxLAN configuration with a VLAN-aware bridge selftests: forwarding: Add VxLAN test with a VLAN-aware bridge .../net/ethernet/mellanox/mlxsw/spectrum.c | 53 +- .../net/ethernet/mellanox/mlxsw/spectrum.h | 26 +- .../ethernet/mellanox/mlxsw/spectrum_fid.c | 6 + .../mellanox/mlxsw/spectrum_switchdev.c | 407 +++++++-- net/bridge/br_vlan.c | 6 +- .../selftests/drivers/net/mlxsw/vxlan.sh | 206 ++++- .../net/forwarding/vxlan_bridge_1q.sh | 790 ++++++++++++++++++ .../forwarding/vxlan_bridge_1q_port_8472.sh | 10 + 8 files changed, 1441 insertions(+), 63 deletions(-) create mode 100755 tools/testing/selftests/net/forwarding/vxlan_bridge_1q.sh create mode 100755 tools/testing/selftests/net/forwarding/vxlan_bridge_1q_port_8472.sh -- 2.19.1