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:   Wed,  9 Jun 2021 18:15:50 +0300
From:   Oleksandr Mazur <oleksandr.mazur@...ision.eu>
To:     oleksandr.mazur@...ision.eu, jiri@...dia.com, davem@...emloft.net,
        kuba@...nel.org
Cc:     netdev@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: [PATCH net-next 00/11] Marvell Prestera driver implementation of devlink functionality.

Prestera Switchdev driver implements a set of devlink-based features,
that include both debug functionality (traps with trap statistics), as well
as functional rate limiter that is based on the devlink kernel API (interfaces).

The core prestera-devlink functionality is implemented in the prestera_devlink.c.

The patch series also extends the existing devlink kernel API with a list of core
features:
 - devlink: add API for both publish/unpublish port parameters.
 - devlink: add port parameters-specific ops, as current design makes it impossible
   to register one parameter for multiple ports, and effectively distinguish for
   what port parameter_op is called.
 - devlink: add trap_drop_counter_get callback for driver to register - make it possible
   to keep track of how many packets have been dropped (hard) by the switch device, before
   the packets even made it to the devlink subsystem (e.g. dropped due to RXDMA buffer
   overflow).

The core features that extend current functionality of prestera Switchdev driver:
 - add storm control (BUM control) functionality, that is driven through the
   devlink (per) port parameters.
 - add logic for driver traps and drops registration (also traps with DROP action).
 - add documentation for prestera driver traps and drops group.

Oleksandr Mazur (10):
  net: core: devlink: add dropped stats traps field
  net: core: devlink: add port_params_ops for devlink port parameters
    altering
  testing: selftests: net: forwarding: add devlink-required
    functionality to test (hard) dropped stats field
  drivers: net: netdevsim: add devlink trap_drop_counter_get
    implementation
  testing: selftests: drivers: net: netdevsim: devlink: add test case
    for hard drop statistics
  drivers: net: netdevsim: add devlink port params usage
  net: marvell: prestera: devlink: add traps/groups implementation
  net: marvell: prestera: devlink: add traps with DROP action
  net: marvell: prestera: add storm control (rate limiter)
    implementation
  documentation: networking: devlink: add prestera switched driver
    Documentation

Sudarsana Reddy Kalluru (1):
  net: core: devlink: add apis to publish/unpublish port params

 Documentation/networking/devlink/prestera.rst | 167 +++++
 .../net/ethernet/marvell/prestera/prestera.h  |   9 +
 .../marvell/prestera/prestera_devlink.c       | 664 +++++++++++++++++-
 .../marvell/prestera/prestera_devlink.h       |   3 +
 .../ethernet/marvell/prestera/prestera_dsa.c  |   3 +
 .../ethernet/marvell/prestera/prestera_dsa.h  |   1 +
 .../ethernet/marvell/prestera/prestera_hw.c   |  60 ++
 .../ethernet/marvell/prestera/prestera_hw.h   |  20 +
 .../ethernet/marvell/prestera/prestera_rxtx.c |   7 +-
 drivers/net/netdevsim/dev.c                   | 108 ++-
 drivers/net/netdevsim/netdevsim.h             |   3 +
 include/net/devlink.h                         |  35 +
 net/core/devlink.c                            | 139 +++-
 .../drivers/net/netdevsim/devlink_trap.sh     |  10 +
 .../selftests/net/forwarding/devlink_lib.sh   |  26 +
 15 files changed, 1238 insertions(+), 17 deletions(-)
 create mode 100644 Documentation/networking/devlink/prestera.rst

-- 
2.17.1

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ