Skip to content
  1. Jun 22, 2023
    • Petr Machata's avatar
      selftests: mlxsw: one_armed_router: Use port MAC for bridge address · 664bc72d
      Petr Machata authored
      
      
      In a future patch, mlxsw will start adding RIFs to uppers of front panel
      port netdevices, if they have an IP address.
      
      At the time that the front panel port is enslaved to the bridge, the bridge
      MAC address does not have the same prefix as other interfaces in the
      system. On Nvidia Spectrum-1 machines all the RIFs have to have the same
      38-bit MAC address prefix. Since the bridge does not obey this limitation,
      the RIF cannot be created, and the enslavement attempt is vetoed on the
      grounds of the configuration not being offloadable.
      
      The bridge eventually inherits MAC address from its first member, after the
      enslavement is acked. A number of (mainly VXLAN) selftests already work
      around the problem by setting the MAC address to whatever it will
      eventually be anyway. Do the same for this selftest.
      
      Signed-off-by: default avatarPetr Machata <petrm@nvidia.com>
      Reviewed-by: default avatarDanielle Ratson <danieller@nvidia.com>
      Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      664bc72d
    • Petr Machata's avatar
      selftests: mlxsw: vxlan: Disable IPv6 autogen on bridges · 55415775
      Petr Machata authored
      
      
      In a future patch, mlxsw will start adding RIFs to uppers of front panel
      port netdevices, if they have an IP address.
      
      At the time that the front panel port is enslaved to the bridge (this holds
      for all bridges used here), the bridge MAC address does not have the same
      prefix as other interfaces in the system. On Nvidia Spectrum-1 machines all
      the RIFs have to have the same 38-bit MAC address prefix. Since the bridge
      does not obey this limitation, the RIF cannot be created, and the
      enslavement attempt is vetoed on the grounds of the configuration not being
      offloadable.
      
      The selftest itself however checks various aspects of VXLAN offloading and
      the bridges do not need to participate in routing traffic. The IP addresses
      or the RIFs are irrelevant.
      
      Fix by disabling automatic IPv6 address generation for the HW-offloaded
      bridges in this selftest, thus exempting them from mlxsw router attention.
      
      Signed-off-by: default avatarPetr Machata <petrm@nvidia.com>
      Reviewed-by: default avatarDanielle Ratson <danieller@nvidia.com>
      Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      55415775
    • Petr Machata's avatar
      selftests: mlxsw: spectrum: q_in_vni_veto: Disable IPv6 autogen on a bridge · 08035d8e
      Petr Machata authored
      
      
      In a future patch, mlxsw will start adding RIFs to uppers of front panel
      port netdevices, if they have an IP address.
      
      At the time that the front panel port is enslaved to the bridge, the bridge
      MAC address does not have the same prefix as other interfaces in the
      system. On Nvidia Spectrum-1 machines all the RIFs have to have the same
      38-bit MAC address prefix. Since the bridge does not obey this limitation,
      the RIF cannot be created, and the enslavement attempt is vetoed on the
      grounds of the configuration not being offloadable.
      
      The selftest itself however checks vetoing of a different aspect of the
      configuration and the bridge does not need to participate in routing
      traffic. The IP address or the RIF are irrelevant.
      
      Fix by disabling automatic IPv6 address generation for the HW-offloaded
      bridge in this selftest, thus exempting it from mlxsw router attention.
      
      Signed-off-by: default avatarPetr Machata <petrm@nvidia.com>
      Reviewed-by: default avatarDanielle Ratson <danieller@nvidia.com>
      Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      08035d8e
    • Petr Machata's avatar
      selftests: mlxsw: qos_mc_aware: Disable IPv6 autogen on bridges · ea2d5f75
      Petr Machata authored
      
      
      In a future patch, mlxsw will start adding RIFs to uppers of front panel
      port netdevices, if they have an IP address.
      
      At the time that the front panel port is enslaved to the bridge (this holds
      for both bridges used here), the bridge MAC address does not have the same
      prefix as other interfaces in the system. On Nvidia Spectrum-1 machines all
      the RIFs have to have the same 38-bit MAC address prefix. Since the bridge
      does not obey this limitation, the RIF cannot be created, and the
      enslavement attempt is vetoed on the grounds of the configuration not being
      offloadable.
      
      The selftest itself however checks traffic prioritization and scheduling,
      and the bridges serve for their L2 forwarding capabilities, and do not need
      to participate in routing traffic. The IP addresses or the RIFs are
      irrelevant.
      
      Fix by disabling automatic IPv6 address generation for the HW-offloaded
      bridges in this selftest, thus exempting them from mlxsw router attention.
      
      Signed-off-by: default avatarPetr Machata <petrm@nvidia.com>
      Reviewed-by: default avatarDanielle Ratson <danieller@nvidia.com>
      Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      ea2d5f75
    • Petr Machata's avatar
      selftests: mlxsw: qos_ets_strict: Disable IPv6 autogen on bridges · ec7023e6
      Petr Machata authored
      
      
      In a future patch, mlxsw will start adding RIFs to uppers of front panel
      port netdevices, if they have an IP address.
      
      At the time that the front panel port is enslaved to the bridge (this holds
      for both bridges used here), the bridge MAC address does not have the same
      prefix as other interfaces in the system. On Nvidia Spectrum-1 machines all
      the RIFs have to have the same 38-bit MAC address prefix. Since the bridge
      does not obey this limitation, the RIF cannot be created, and the
      enslavement attempt is vetoed on the grounds of the configuration not being
      offloadable.
      
      The selftest itself however checks traffic prioritization and scheduling,
      and the bridges serve for their L2 forwarding capabilities, and do not need
      to participate in routing traffic. The IP addresses or the RIFs are
      irrelevant.
      
      Fix by disabling automatic IPv6 address generation for the HW-offloaded
      bridges in this selftest, thus exempting them from mlxsw router attention.
      
      Signed-off-by: default avatarPetr Machata <petrm@nvidia.com>
      Reviewed-by: default avatarDanielle Ratson <danieller@nvidia.com>
      Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      ec7023e6
    • Petr Machata's avatar
      selftests: mlxsw: qos_dscp_bridge: Disable IPv6 autogen on a bridge · 6349f9bb
      Petr Machata authored
      
      
      In a future patch, mlxsw will start adding RIFs to uppers of front panel
      port netdevices, if they have an IP address.
      
      At the time that the front panel port is enslaved to the bridge, the bridge
      MAC address does not have the same prefix as other interfaces in the
      system. On Nvidia Spectrum-1 machines all the RIFs have to have the same
      38-bit MAC address prefix. Since the bridge does not obey this limitation,
      the RIF cannot be created, and the enslavement attempt is vetoed on the
      grounds of the configuration not being offloadable.
      
      The selftest itself however checks DCB DSCP-based prioritization, and the
      bridge serves for its L2 forwarding capabilities, and does not need to
      participate in routing traffic. The IP address or the RIF are irrelevant.
      
      Fix by disabling automatic IPv6 address generation for the HW-offloaded
      bridge in this selftest, thus exempting it from mlxsw router attention.
      
      Signed-off-by: default avatarPetr Machata <petrm@nvidia.com>
      Reviewed-by: default avatarDanielle Ratson <danieller@nvidia.com>
      Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      6349f9bb
    • Petr Machata's avatar
      selftests: mlxsw: mirror_gre_scale: Disable IPv6 autogen on a bridge · 32b3a7bf
      Petr Machata authored
      
      
      In a future patch, mlxsw will start adding RIFs to uppers of front panel
      port netdevices, if they have an IP address.
      
      At the time that the front panel port is enslaved to the bridge, the bridge
      MAC address does not have the same prefix as other interfaces in the
      system. On Nvidia Spectrum-1 machines all the RIFs have to have the same
      38-bit MAC address prefix. Since the bridge does not obey this limitation,
      the RIF cannot be created, and the enslavement attempt is vetoed on the
      grounds of the configuration not being offloadable.
      
      The selftest itself however checks how many mirroring sessions a machine is
      capable of offloading. The IP address or the RIF are irrelevant.
      
      Fix by disabling automatic IPv6 address generation for the HW-offloaded
      bridge in this selftest, thus exempting it from mlxsw router attention.
      
      Signed-off-by: default avatarPetr Machata <petrm@nvidia.com>
      Reviewed-by: default avatarDanielle Ratson <danieller@nvidia.com>
      Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      32b3a7bf
    • Petr Machata's avatar
      selftests: mlxsw: extack: Disable IPv6 autogen on bridges · a758dc46
      Petr Machata authored
      
      
      In a future patch, mlxsw will start adding RIFs to uppers of front panel
      port netdevices, if they have an IP address.
      
      At the time that the front panel port is enslaved to the bridge (this holds
      for all bridges used here), the bridge MAC address does not have the same
      prefix as other interfaces in the system. On Nvidia Spectrum-1 machines all
      the RIFs have to have the same 38-bit MAC address prefix. Since the bridge
      does not obey this limitation, the RIF cannot be created, and the
      enslavement attempt is vetoed on the grounds of the configuration not being
      offloadable.
      
      The selftest itself however checks whether a different vetoed aspect of the
      configuration provides an extack. The IP address or the RIF are irrelevant.
      
      Fix by disabling automatic IPv6 address generation for the HW-offloaded
      bridges in this selftest, thus exempting them from mlxsw router attention.
      
      Signed-off-by: default avatarPetr Machata <petrm@nvidia.com>
      Reviewed-by: default avatarDanielle Ratson <danieller@nvidia.com>
      Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      a758dc46
    • Petr Machata's avatar
      selftests: mlxsw: q_in_q_veto: Disable IPv6 autogen on bridges · 8cfdd300
      Petr Machata authored
      
      
      In a future patch, mlxsw will start adding RIFs to uppers of front panel
      port netdevices, if they have an IP address.
      
      The swp enslavement to the 802.1ad bridge is not allowed, because RIFs are
      not allowed to be created for 802.1ad bridges, but the address indicates
      one needs to be created. Thus the veto selftests fail already during the
      port enslavement. Then the attempt to create a VLAN on top of the same
      bridge is not vetoed, because the bridge is not related to mlxsw, and the
      selftest fails.
      
      Fix by disabling automatic IPv6 address generation for the bridges in this
      selftest, thus exempting them from the mlxsw router attention.
      
      Signed-off-by: default avatarPetr Machata <petrm@nvidia.com>
      Reviewed-by: default avatarAmit Cohen <amcohen@nvidia.com>
      Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      8cfdd300
    • Petr Machata's avatar
      selftests: forwarding: router_bridge: Use port MAC for bridge address · 5e71bf50
      Petr Machata authored
      
      
      In a future patch, mlxsw will start adding RIFs to uppers of front panel
      port netdevices, if they have an IP address.
      
      At the time that the front panel port is enslaved to the bridge, the bridge
      MAC address does not have the same prefix as other interfaces in the
      system. On Nvidia Spectrum-1 machines all the RIFs have to have the same
      38-bit MAC address prefix. Since the bridge does not obey this limitation,
      the RIF cannot be created, and the enslavement attempt is vetoed on the
      grounds of the configuration not being offloadable.
      
      The bridge eventually inherits MAC address from its first member, after the
      enslavement is acked. A number of (mainly VXLAN) selftests already work
      around the problem by setting the MAC address to whatever it will
      eventually be anyway. Do the same here.
      
      Signed-off-by: default avatarPetr Machata <petrm@nvidia.com>
      Reviewed-by: default avatarDanielle Ratson <danieller@nvidia.com>
      Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      5e71bf50
    • Petr Machata's avatar
      selftests: forwarding: mirror_gre_*: Use port MAC for bridge address · 8fd32576
      Petr Machata authored
      
      
      In a future patch, mlxsw will start adding RIFs to uppers of front panel
      port netdevices, if they have an IP address.
      
      At the time that the front panel port is enslaved to the bridge, the bridge
      MAC address does not have the same prefix as other interfaces in the
      system. On Nvidia Spectrum-1 machines all the RIFs have to have the same
      38-bit MAC address prefix. Since the bridge does not obey this limitation,
      the RIF cannot be created, and the enslavement attempt is vetoed on the
      grounds of the configuration not being offloadable.
      
      The bridge eventually inherits MAC address from its first member, after the
      enslavement is acked. A number of (mainly VXLAN) selftests already work
      around the problem by setting the MAC address to whatever it will
      eventually be anyway. Do the same for several mirror_gre selftests.
      
      Signed-off-by: default avatarPetr Machata <petrm@nvidia.com>
      Reviewed-by: default avatarDanielle Ratson <danieller@nvidia.com>
      Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      8fd32576
    • Petr Machata's avatar
      selftests: forwarding: mirror_gre_*: Disable IPv6 autogen on bridges · 92c3bb53
      Petr Machata authored
      
      
      In a future patch, mlxsw will start adding RIFs to uppers of front panel
      port netdevices, if they have an IP address.
      
      At the time that the front panel port is enslaved to the bridge, the bridge
      MAC address does not have the same prefix as other interfaces in the
      system. On Nvidia Spectrum-1 machines all the RIFs have to have the same
      38-bit MAC address prefix. Since the bridge does not obey this limitation,
      the RIF cannot be created, and the enslavement attempt is vetoed on the
      grounds of the configuration not being offloadable.
      
      These two selftests however check mirroring traffic to a gretap netdevice.
      The bridge here does not participate in routing traffic and the IP address
      or the RIF are irrelevant.
      
      Fix by disabling automatic IPv6 address generation for the HW-offloaded
      bridges in these selftests, thus exempting them from mlxsw router
      attention. Since the bridges are only used for L2 forwarding, this change
      should not hinder usefulness of this selftest for testing SW datapath or HW
      datapaths in other devices.
      
      Signed-off-by: default avatarPetr Machata <petrm@nvidia.com>
      Reviewed-by: default avatarDanielle Ratson <danieller@nvidia.com>
      Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      92c3bb53
    • Petr Machata's avatar
      selftests: forwarding: pedit_dsfield: Disable IPv6 autogen on a bridge · f61018dc
      Petr Machata authored
      
      
      In a future patch, mlxsw will start adding RIFs to uppers of front panel
      port netdevices, if they have an IP address.
      
      At the time that the front panel port is enslaved to the bridge, the bridge
      MAC address does not have the same prefix as other interfaces in the
      system. On Nvidia Spectrum-1 machines all the RIFs have to have the same
      38-bit MAC address prefix. Since the bridge does not obey this limitation,
      the RIF cannot be created, and the enslavement attempt is vetoed on the
      grounds of the configuration not being offloadable.
      
      The selftest itself however checks whether skbedit changes packet priority
      as appropriate. The bridge thus does not need to participate in routing
      traffic and the IP address or the RIF are irrelevant.
      
      Fix by disabling automatic IPv6 address generation for the HW-offloaded
      bridge in this selftest, thus exempting it from mlxsw router attention.
      Since the bridge is only used for L2 forwarding, this change should not
      hinder usefulness of this selftest for testing SW datapath or HW datapaths
      in other devices.
      
      Signed-off-by: default avatarPetr Machata <petrm@nvidia.com>
      Reviewed-by: default avatarDanielle Ratson <danieller@nvidia.com>
      Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      f61018dc
    • Petr Machata's avatar
      selftests: forwarding: skbedit_priority: Disable IPv6 autogen on a bridge · d7442b7d
      Petr Machata authored
      
      
      In a future patch, mlxsw will start adding RIFs to uppers of front panel
      port netdevices, if they have an IP address.
      
      At the time that the front panel port is enslaved to the bridge, the bridge
      MAC address does not have the same prefix as other interfaces in the
      system. On Nvidia Spectrum-1 machines all the RIFs have to have the same
      38-bit MAC address prefix. Since the bridge does not obey this limitation,
      the RIF cannot be created, and the enslavement attempt is vetoed on the
      grounds of the configuration not being offloadable.
      
      The selftest itself however checks operation of pedit on IPv4 and IPv6
      dsfield and its parts. The bridge thus does not need to participate in
      routing traffic and the IP address or the RIF are irrelevant.
      
      Fix by disabling automatic IPv6 address generation for the HW-offloaded
      bridge in this selftest, thus exempting it from mlxsw router attention.
      Since the bridge is only used for L2 forwarding, this change should not
      hinder usefulness of this selftest for testing SW datapath or HW datapaths
      in other devices.
      
      Signed-off-by: default avatarPetr Machata <petrm@nvidia.com>
      Reviewed-by: default avatarDanielle Ratson <danieller@nvidia.com>
      Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      d7442b7d
    • Petr Machata's avatar
      selftests: forwarding: dual_vxlan_bridge: Disable IPv6 autogen on bridges · c8015333
      Petr Machata authored
      
      
      In a future patch, mlxsw will start adding RIFs to uppers of front panel
      port netdevices, if they have an IP address.
      
      This will cause this selftest to fail spuriously. The swp enslavement to
      the 802.1ad bridge is not allowed, because RIFs are not allowed to be
      created for 802.1ad bridges, but the address indicates one needs to be
      created.
      
      Fix by disabling automatic IPv6 address generation for the HW-offloaded
      bridge in this selftest, thus exempting it from mlxsw router attention.
      
      Signed-off-by: default avatarPetr Machata <petrm@nvidia.com>
      Reviewed-by: default avatarAmit Cohen <amcohen@nvidia.com>
      Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      c8015333
    • Petr Machata's avatar
      selftests: forwarding: q_in_vni: Disable IPv6 autogen on bridges · 8c3736ce
      Petr Machata authored
      
      
      In a future patch, mlxsw will start adding RIFs to uppers of front panel
      port netdevices, if they have an IP address.
      
      This will cause this selftest to fail spuriously. The swp enslavement to
      the 802.1ad bridge is not allowed, because RIFs are not allowed to be
      created for 802.1ad bridges, but the address indicates one needs to be
      created.
      
      Fix by disabling automatic IPv6 address generation for the HW-offloaded
      bridge in this selftest, thus exempting it from mlxsw router attention.
      
      Signed-off-by: default avatarPetr Machata <petrm@nvidia.com>
      Reviewed-by: default avatarAmit Cohen <amcohen@nvidia.com>
      Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      8c3736ce
  2. Jun 21, 2023