1. Aug 22, 2022
  2. Aug 20, 2022
  3. Aug 19, 2022
    • Jakub Kicinski's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net · 268603d7
      Jakub Kicinski authored
      
      
      No conflicts.
      
      Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      268603d7
    • Lorenzo Bianconi's avatar
      igc: add xdp frags support to ndo_xdp_xmit · 8c78c1e5
      Lorenzo Bianconi authored
      
      
      Add the capability to map non-linear xdp frames in XDP_TX and
      ndo_xdp_xmit callback.
      
      Signed-off-by: default avatarLorenzo Bianconi <lorenzo@kernel.org>
      Tested-by: default avatarNaama Meir <naamax.meir@linux.intel.com>
      Signed-off-by: default avatarTony Nguyen <anthony.l.nguyen@intel.com>
      Link: https://lore.kernel.org/r/20220817173628.109102-1-anthony.l.nguyen@intel.com
      
      
      Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      8c78c1e5
    • Jakub Kicinski's avatar
      Merge branch 'selftests-mlxsw-add-ordering-tests-for-unified-bridge-model' · bafe1adb
      Jakub Kicinski authored
      Petr Machata says:
      
      ====================
      selftests: mlxsw: Add ordering tests for unified bridge model
      
      Amit Cohen writes:
      
      Commit 798661c7 ("Merge branch 'mlxsw-unified-bridge-conversion-part-6'")
      converted mlxsw driver to use unified bridge model. In the legacy model,
      when a RIF was created / destroyed, it was firmware's responsibility to
      update it in the relevant FID classification records. In the unified bridge
      model, this responsibility moved to software.
      
      This set adds tests to check the order of configuration for the following
      classifications:
      1. {Port, VID} -> FID
      2. VID -> FID
      3. VNI -> FID (after decapsulation)
      
      In addition, in the legacy model, software is responsible to update a
      table which is used to determine the packet's egress VID. Add a test to
      check that the order of configuration does not impact switch behavior.
      
      See more details in the commit messages.
      
      Note that the tests supposed to pass also using the legacy model, they
      are added now as with the new model they test the driver and not the
      firmware.
      
      Patch set overview:
      Patch #1 adds test for {Port, VID} -> FID
      Patch #2 adds test for VID -> FID
      Patch #3 adds test for VNI -> FID
      Patch #4 adds test for egress VID classification
      ====================
      
      Link: https://lore.kernel.org/r/cover.1660747162.git.petrm@nvidia.com
      
      
      Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      bafe1adb
    • Amit Cohen's avatar
      selftests: mlxsw: Add egress VID classification test · 1623d571
      Amit Cohen authored
      
      
      After routing, the device always consults a table that determines the
      packet's egress VID based on {egress RIF, egress local port}. In the
      unified bridge model, it is up to software to maintain this table via
      REIV register.
      
      The table needs to be updated in the following flows:
      1. When a RIF is set on a FID, for each FID's {Port, VID} mapping, a new
         {RIF, Port}->VID mapping should be created.
      2. When a {Port, VID} is mapped to a FID and the FID already has a RIF,
         a new {RIF, Port}->VID mapping should be created.
      
      Add a test to verify that packets get the correct VID after routing,
      regardless of the order of the configuration.
      
       # ./egress_vid_classification.sh
       TEST: Add RIF for existing {port, VID}->FID mapping                 [ OK ]
       TEST: Add {port, VID}->FID mapping for FID with a RIF               [ OK ]
      
      Signed-off-by: default avatarAmit Cohen <amcohen@nvidia.com>
      Reviewed-by: default avatarIdo Schimmel <idosch@nvidia.com>
      Signed-off-by: default avatarPetr Machata <petrm@nvidia.com>
      Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      1623d571
    • Amit Cohen's avatar
      selftests: mlxsw: Add ingress RIF configuration test for VXLAN · cbeb6e11
      Amit Cohen authored
      
      
      Before layer 2 forwarding, the device classifies an incoming packet to a
      FID. After classification, the FID is known, but also all the attributes of
      the FID, such as the router interface (RIF) via which a packet that needs
      to be routed will ingress the router block.
      
      For VXLAN decapsulation, the FID classification is done according to the
      VNI. When a RIF is added on top of a FID, the existing VNI->FID mapping
      should be updated by the software with the new RIF. In addition, when a new
      mapping is added for FID which already has a RIF, the correct RIF should
      be used for it.
      
      Add a test to verify that packets can be routed after decapsulation which
      is done after VNI->FID classification, regardless of the order of the
      configuration.
      
       # ./ingress_rif_conf_vxlan.sh
       TEST: Add RIF for existing VNI->FID mapping                         [ OK ]
       TEST: Add VNI->FID mapping for FID with a RIF                       [ OK ]
      
      Signed-off-by: default avatarAmit Cohen <amcohen@nvidia.com>
      Reviewed-by: default avatarIdo Schimmel <idosch@nvidia.com>
      Signed-off-by: default avatarPetr Machata <petrm@nvidia.com>
      Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      cbeb6e11
    • Amit Cohen's avatar
      selftests: mlxsw: Add ingress RIF configuration test for 802.1Q bridge · 3a5ddc88
      Amit Cohen authored
      
      
      Before layer 2 forwarding, the device classifies an incoming packet to a
      FID. After classification, the FID is known, but also all the attributes of
      the FID, such as the router interface (RIF) via which a packet that needs
      to be routed will ingress the router block.
      
      For VLAN-aware bridges (802.1Q), the FID classification is done according
      to VID. When a RIF is added on top of a FID, the existing VID->FID mapping
      should be updated by the software with the new RIF.
      
      We never map multiple VLANs to the same FID using VID->FID, so we cannot
      create VID->FID for FID which already has a RIF using 802.1Q. Anyway,
      verify that packets can be routed via port which is added after the FID
      already has a RIF.
      
      Add a test to verify that packets can be routed after VID->FID
      classification, regardless of the order of the configuration.
      
       # ./ingress_rif_conf_1q.sh
       TEST: Add RIF for existing VID->FID mapping                         [ OK ]
       TEST: Add port to VID->FID mapping for FID with a RIF               [ OK ]
      
      Signed-off-by: default avatarAmit Cohen <amcohen@nvidia.com>
      Reviewed-by: default avatarIdo Schimmel <idosch@nvidia.com>
      Signed-off-by: default avatarPetr Machata <petrm@nvidia.com>
      Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      3a5ddc88