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]
Date:   Mon, 22 Oct 2018 23:25:47 +0530
From:   sunil.kovvuri@...il.com
To:     netdev@...r.kernel.org, davem@...emloft.net
Cc:     arnd@...db.de, linux-soc@...r.kernel.org,
        Sunil Goutham <sgoutham@...vell.com>
Subject: [PATCH v2 00/17] octeontx2-af: NPC parser and NIX blocks initialization

From: Sunil Goutham <sgoutham@...vell.com>

This patchset is a continuation to earlier submitted two patch
series to add a new driver for Marvell's OcteonTX2 SOC's 
Resource virtualization unit (RVU) admin function driver.

1. octeontx2-af: Add RVU Admin Function driver
   https://www.spinics.net/lists/netdev/msg528272.html
2. octeontx2-af: NPA and NIX blocks initialization 
   https://www.spinics.net/lists/netdev/msg529163.html

This patch series adds more NIX block configuration logic
and additionally adds NPC block parser profile configuration.
In brief below is what this series adds.
NIX block:
- Support for PF/VF to allocate/free transmit scheduler queues,
  maintenance and their configuration.
- Adds support for packet replication lists, only broadcast
  packets is covered for now.
- Defines few RSS flow algorithms for HW to distribute packets.
  This is not the hash algorithsm (i.e toeplitz or crc32), here SW
  defines what fields in packet should HW take and calculate the hash.
- Support for PF/VF to configure VTAG strip and capture capabilities.
- Reset NIXLF statastics.

NPC block:
This block has multiple parser engines which support packet parsing
at multiple layers and generates a parse result which is further used
to generate a key. Based on packet field offsets in the key, SW can 
install packet forwarding rules.
This patch series adds
- Initial parser profile to be programmed into parser engines.
- Default forwarding rules to forward packets to different logical
  interfaces having a NIXLF attached.
- Support for promiscuous and multicast modes.

Changes from v1:
 1 Fixed kernel build failure when compiled with BIG_ENDIAN enabled.
   - Reported by Kbuild test robot
 2 Fixed a warning observed when kernel is built with -Wunused-but-set-variable

Geetha sowjanya (1):
  octeontx2-af: Config pkind for CGX mapped PFs

Hao Zheng (1):
  octeontx2-af: Add NPC KPU profile

Stanislaw Kardach (1):
  octeontx2-af: Add LMAC channel info to NIXLF_ALLOC response

Sunil Goutham (12):
  octeontx2-af: NIX Tx scheduler queues alloc/free
  octeontx2-af: NIX Tx scheduler queue config support
  octeontx2-af: Config NPC KPU engines with parser profile
  octeontx2-af: Broadcast packet replication support
  octeontx2-af: Update bcast list upon NIXLF alloc/free
  octeontx2-af: Enable packet length and csum validation
  octeontx2-af: NPC MCAM and LDATA extract minimal configuration
  octeontx2-af: Install ucast and bcast pkt forwarding rules
  octeontx2-af: NIX Rx flowkey configuration for RSS
  octeontx2-af: Support for changing RSS algorithm
  octeontx2-af: Support for setting MAC address
  octeontx2-af: Support for NIXLF's UCAST/PROMISC/ALLMULTI modes

Vamsi Attunuru (2):
  octeontx2-af: Reset NIXLF's Rx/Tx stats
  octeontx2-af: Support for VTAG strip and capture

 drivers/net/ethernet/marvell/octeontx2/af/Makefile |    3 +-
 drivers/net/ethernet/marvell/octeontx2/af/cgx.c    |   12 +
 drivers/net/ethernet/marvell/octeontx2/af/cgx.h    |    1 +
 drivers/net/ethernet/marvell/octeontx2/af/common.h |   50 +
 drivers/net/ethernet/marvell/octeontx2/af/mbox.h   |  110 +-
 drivers/net/ethernet/marvell/octeontx2/af/npc.h    |  262 +
 .../ethernet/marvell/octeontx2/af/npc_profile.h    | 5709 ++++++++++++++++++++
 drivers/net/ethernet/marvell/octeontx2/af/rvu.c    |   12 +-
 drivers/net/ethernet/marvell/octeontx2/af/rvu.h    |   97 +-
 .../net/ethernet/marvell/octeontx2/af/rvu_cgx.c    |    7 +-
 .../net/ethernet/marvell/octeontx2/af/rvu_nix.c    | 1067 ++++
 .../net/ethernet/marvell/octeontx2/af/rvu_npc.c    |  816 +++
 .../net/ethernet/marvell/octeontx2/af/rvu_reg.c    |   71 +
 .../net/ethernet/marvell/octeontx2/af/rvu_reg.h    |   61 +
 .../net/ethernet/marvell/octeontx2/af/rvu_struct.h |   35 +
 15 files changed, 8306 insertions(+), 7 deletions(-)
 create mode 100644 drivers/net/ethernet/marvell/octeontx2/af/npc.h
 create mode 100644 drivers/net/ethernet/marvell/octeontx2/af/npc_profile.h
 create mode 100644 drivers/net/ethernet/marvell/octeontx2/af/rvu_npc.c
 create mode 100644 drivers/net/ethernet/marvell/octeontx2/af/rvu_reg.c

-- 
2.7.4

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ