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: <20180226203617.10242-1-saeedm@mellanox.com>
Date:   Mon, 26 Feb 2018 12:36:02 -0800
From:   Saeed Mahameed <saeedm@...lanox.com>
To:     "David S. Miller" <davem@...emloft.net>,
        Doug Ledford <dledford@...hat.com>,
        Jason Gunthorpe <jgg@...lanox.com>
Cc:     Leon Romanovsky <leonro@...lanox.com>,
        Mark Bloch <markb@...lanox.com>,
        Or Gerlitz <ogerlitz@...lanox.com>, netdev@...r.kernel.org,
        linux-rdma@...r.kernel.org, Saeed Mahameed <saeedm@...lanox.com>
Subject: [pull request][for-next 00/15] Mellanox, mlx5 RDMA E-Switch representors 2018-02-23

Hi Doug and Dave,

This series includes shared code updates for mlx5 core driver for both
netdev and rdma subsystems.  This series should be pulled to both
trees so we can continue netdev and rdma specific submissions separately.

For more information please see tag log below.

P.S. We expect one more shared code pull requests.

Since this series contains more work on RDMA than mlx5 eswitch, I would
like to get Doug's or Jason's approval before pulling it in.

The series doesn't cause any conflict with the latest mlx5 net fixes
series.

Thanks,
Saeed.

---

The following changes since commit 388ca8be00370db132464e27f745b8a0add19fcb:

  IB/mlx5: Implement fragmented completion queue (CQ) (2018-02-15 00:30:03 -0800)

are available in the Git repository at:

  git://git.kernel.org/pub/scm/linux/kernel/git/mellanox/linux.git tags/mlx5-updates-2018-02-23

for you to fetch changes up to ec9c2fb8ceb5b514c4820f732537cb2982de0620:

  IB/mlx5: Disable self loopback check when in switchdev mode (2018-02-23 12:36:39 -0800)

----------------------------------------------------------------
mlx5-update-2018-02-23 (IB representors)

From: Mark Bloch <markb@...lanox.com>
=========
Add IB representor when in switchdev mode

The following series adds support for an IB (RAW Ethernet only) device
representor which is created when the user switches to switchdev mode.

Today when switching to switchdev mode the only representors which are
created are net devices. Each netdev is a representor of a virtual
function and any data sent via the representor is received on the virtual
function, and any data sent via the virtual function is received by the
representor.

For the mlx5 driver the main use of this functionality is to be able to
use Open vSwitch on the hypervisor in order to manage/control traffic
from/to the virtual functions. Open vSwitch can also work with  DPDK
devices and not just net devices, this series exposes an IB device, which
Mellanox PMD driver uses, which then can be used by Open vSwitch DPDK.

An IB device representor exposes only RAW Ethernet QP capabilities and
the ability to create flow rules to direct traffic to its RX queues. The
state of the IB device (ACTIVE/DOWN etc..) is based on the state of the
corresponding net device representor. No other RDMA/RoCE functionality is
currently supported and no GID table is exposed.
=========

----------------------------------------------------------------
Mark Bloch (15):
      net/mlx5: E-Switch, Add callback to get representor device
      net/mlx5: E-Switch, Move representors definition to a global scope
      net/mlx5: E-Switch, Increase number of FTEs in FDB in switchdev mode
      net/mlx5: E-Switch, Optimize HW steering tables in switchdev mode
      net/mlx5: E-Switch, Add definition of IB representor
      IB/mlx5: Add basic regiser/unregister representors code
      IB/mlx5: Allocate flow DB only on PF IB device
      IB/mlx5: Add match on vport when in switchdev mode
      IB/mlx5: Listen to netdev register/unresiter events in switchdev mode
      IB/mlx5: When in switchdev mode, expose only raw packet capabilities
      IB/mlx5: Don't expose MR cache in switchdev mode
      IB/mlx5: E-Switch, Add rule to forward traffic to vport
      IB/mlx5: Add proper representors support
      net/mlx5: E-Switch, Reload IB interface when switching devlink modes
      IB/mlx5: Disable self loopback check when in switchdev mode

 drivers/infiniband/hw/mlx5/Makefile                |   1 +
 drivers/infiniband/hw/mlx5/ib_rep.c                | 189 +++++++++++
 drivers/infiniband/hw/mlx5/ib_rep.h                |  72 ++++
 drivers/infiniband/hw/mlx5/main.c                  | 361 ++++++++++++++++-----
 drivers/infiniband/hw/mlx5/mlx5_ib.h               |  32 +-
 drivers/infiniband/hw/mlx5/mr.c                    |   5 +-
 drivers/infiniband/hw/mlx5/qp.c                    |  24 ++
 drivers/net/ethernet/mellanox/mlx5/core/dev.c      |   8 +
 drivers/net/ethernet/mellanox/mlx5/core/en_rep.c   |  11 +
 drivers/net/ethernet/mellanox/mlx5/core/eswitch.c  |  23 +-
 drivers/net/ethernet/mellanox/mlx5/core/eswitch.h  |  42 +--
 .../ethernet/mellanox/mlx5/core/eswitch_offloads.c | 104 ++++--
 .../net/ethernet/mellanox/mlx5/core/mlx5_core.h    |   7 +-
 include/linux/mlx5/driver.h                        |   6 +
 include/linux/mlx5/eswitch.h                       |  58 ++++
 15 files changed, 796 insertions(+), 147 deletions(-)
 create mode 100644 drivers/infiniband/hw/mlx5/ib_rep.c
 create mode 100644 drivers/infiniband/hw/mlx5/ib_rep.h
 create mode 100644 include/linux/mlx5/eswitch.h

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ