lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20180718081445.9445-1-idosch@mellanox.com>
Date:   Wed, 18 Jul 2018 11:14:29 +0300
From:   Ido Schimmel <idosch@...lanox.com>
To:     netdev@...r.kernel.org
Cc:     davem@...emloft.net, jiri@...lanox.com, mlxsw@...lanox.com,
        Ido Schimmel <idosch@...lanox.com>
Subject: [PATCH net-next 00/16] mlxsw: Introduce initial Spectrum-2 support

This patch set adds initial support for the Spectrum-2 ASIC. The first
two patches add Spectrum-2 specific KVD linear (KVDL) manager. Unlike
the Spectrum ASIC, there is no linear memory and instead the type of the
entry (e.g., nexthop) and its index are hashed and the entry is placed
in the computed address in the hash-based KVD memory.

The third patch adds Spectrum-2 stubs in the multicast routing code.
Support for multicast routing will be added later on.

Patches 4-15 add ACL support. The Spectrum-2 ASIC includes an
algorithmic TCAM (A-TCAM) and a regular circuit TCAM (C-TCAM) for rules
that can't be inserted into the A-TCAM. This set does not make use of
the A-TCAM and only places rules in the C-TCAM. This provides equivalent
scale and performance to the Spectrum ASIC. A follow-up patch set will
introduce A-TCAM support.

The last patch extends the main driver file to work with both ASICs.

Ido Schimmel (6):
  mlxsw: reg: Add Policy-Engine Region Configuration Register
  mlxsw: reg: Add Policy-Engine Region eRP Register
  mlxsw: reg: Add Policy-Engine General Configuration Register
  mlxsw: spectrum_acl: Prepare for Spectrum-2 block encoding
  mlxsw: spectrum_acl: Add support for Spectrum-2 block encoding
  mlxsw: spectrum_acl: Add region association callback

Jiri Pirko (10):
  mlxsw: reg: Add Infrastructure Entry Delete Register
  mlxsw: spectrum: Add KVDL manager implementation for Spectrum-2
  mlxsw: spectrum_mr_tcam: Add Spectrum-2 stubs
  mlxsw: spectrum: Add Spectrum-2 variant of flex actions ops
  mlxsw: spectrum: Introduce flex key blocks for Spectrum-2
  mlxsw: reg: Add support for activity information from PEFA register
  mlxsw: acl: Introduce activity get operation for action block/set
  mlxsw: reg: Add Policy-Engine Region Association Register
  mlxsw: spectrum_acl: Add initial Spectrum-2 ACL implementation
  mlxsw: spectrum: Extend to support Spectrum-2 ASIC

 drivers/net/ethernet/mellanox/mlxsw/Makefile       |   8 +-
 .../mellanox/mlxsw/core_acl_flex_actions.c         |  15 +
 .../mellanox/mlxsw/core_acl_flex_actions.h         |   4 +
 .../ethernet/mellanox/mlxsw/core_acl_flex_keys.c   |  70 ++++-
 .../ethernet/mellanox/mlxsw/core_acl_flex_keys.h   |   3 +-
 drivers/net/ethernet/mellanox/mlxsw/pci.h          |   1 +
 drivers/net/ethernet/mellanox/mlxsw/reg.h          | 285 ++++++++++++++++++-
 drivers/net/ethernet/mellanox/mlxsw/spectrum.c     | 170 +++++++++---
 drivers/net/ethernet/mellanox/mlxsw/spectrum.h     |  13 +
 .../ethernet/mellanox/mlxsw/spectrum1_acl_tcam.c   |   8 +
 .../ethernet/mellanox/mlxsw/spectrum2_acl_tcam.c   | 222 +++++++++++++++
 .../net/ethernet/mellanox/mlxsw/spectrum2_kvdl.c   | 302 +++++++++++++++++++++
 .../ethernet/mellanox/mlxsw/spectrum2_mr_tcam.c    |  82 ++++++
 .../ethernet/mellanox/mlxsw/spectrum_acl_atcam.c   |  95 +++++++
 .../mellanox/mlxsw/spectrum_acl_flex_actions.c     |  55 +++-
 .../mellanox/mlxsw/spectrum_acl_flex_keys.c        | 210 +++++++++++---
 .../ethernet/mellanox/mlxsw/spectrum_acl_tcam.c    |   5 +
 .../ethernet/mellanox/mlxsw/spectrum_acl_tcam.h    |   5 +
 18 files changed, 1467 insertions(+), 86 deletions(-)
 create mode 100644 drivers/net/ethernet/mellanox/mlxsw/spectrum2_acl_tcam.c
 create mode 100644 drivers/net/ethernet/mellanox/mlxsw/spectrum2_kvdl.c
 create mode 100644 drivers/net/ethernet/mellanox/mlxsw/spectrum2_mr_tcam.c
 create mode 100644 drivers/net/ethernet/mellanox/mlxsw/spectrum_acl_atcam.c

-- 
2.14.4

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ