From: Saeed Mahameed <saeed@kernel.org>
To: Leon Romanovsky <leonro@nvidia.com>, Saeed Mahameed <saeedm@nvidia.com>
Cc: Jason Gunthorpe <jgg@nvidia.com>,
netdev@vger.kernel.org, linux-rdma@vger.kernel.org
Subject: [PATCH mlx5-next 0/5] mlx5-next updates 2022-07-03
Date: Sun, 3 Jul 2022 13:54:02 -0700 [thread overview]
Message-ID: <20220703205407.110890-1-saeed@kernel.org> (raw)
From: Saeed Mahameed <saeedm@nvidia.com>
Mark Bloch Says:
================
Expose steering anchor
Expose a steering anchor per priority to allow users to re-inject
packets back into default NIC pipeline for additional processing.
MLX5_IB_METHOD_STEERING_ANCHOR_CREATE returns a flow table ID which
a user can use to re-inject packets at a specific priority.
A FTE (flow table entry) can be created and the flow table ID
used as a destination.
When a packet is taken into a RDMA-controlled steering domain (like
software steering) there may be a need to insert the packet back into
the default NIC pipeline. This exposes a flow table ID to the user that can
be used as a destination in a flow table entry.
With this new method priorities that are exposed to users via
MLX5_IB_METHOD_FLOW_MATCHER_CREATE can be reached from a non-zero UID.
As user-created flow tables (via RDMA DEVX) are created with a non-zero UID
thus it's impossible to point to a NIC core flow table (core driver flow tables
are created with UID value of zero) from userspace.
Create flow tables that are exposed to users with the shared UID, this
allows users to point to default NIC flow tables.
Steering loops are prevented at FW level as FW enforces that no flow
table at level X can point to a table at level lower than X.
===============
Mark Bloch (5):
net/mlx5: Expose the ability to point to any UID from shared UID
net/mlx5: fs, expose flow table ID to users
net/mlx5: fs, allow flow table creation with a UID
RDMA/mlx5: Refactor get flow table function
RDMA/mlx5: Expose steering anchor to userspace
drivers/infiniband/hw/mlx5/fs.c | 159 ++++++++++++++++--
drivers/infiniband/hw/mlx5/mlx5_ib.h | 6 +
.../net/ethernet/mellanox/mlx5/core/fs_cmd.c | 16 +-
.../net/ethernet/mellanox/mlx5/core/fs_cmd.h | 2 +-
.../net/ethernet/mellanox/mlx5/core/fs_core.c | 8 +-
.../mellanox/mlx5/core/steering/dr_cmd.c | 1 +
.../mellanox/mlx5/core/steering/dr_table.c | 8 +-
.../mellanox/mlx5/core/steering/dr_types.h | 1 +
.../mellanox/mlx5/core/steering/fs_dr.c | 7 +-
.../mellanox/mlx5/core/steering/mlx5dr.h | 3 +-
include/linux/mlx5/fs.h | 2 +
include/linux/mlx5/mlx5_ifc.h | 6 +-
include/uapi/rdma/mlx5_user_ioctl_cmds.h | 17 ++
13 files changed, 204 insertions(+), 32 deletions(-)
--
2.36.1
next reply other threads:[~2022-07-03 20:54 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-07-03 20:54 Saeed Mahameed [this message]
2022-07-03 20:54 ` [PATCH mlx5-next 1/5] net/mlx5: Expose the ability to point to any UID from shared UID Saeed Mahameed
2022-07-03 20:54 ` [PATCH mlx5-next 2/5] net/mlx5: fs, expose flow table ID to users Saeed Mahameed
2022-07-03 20:54 ` [PATCH mlx5-next 3/5] net/mlx5: fs, allow flow table creation with a UID Saeed Mahameed
2022-07-03 20:54 ` [PATCH rdma-next 4/5] RDMA/mlx5: Refactor get flow table function Saeed Mahameed
2022-07-03 20:54 ` [PATCH rdma-next 5/5] RDMA/mlx5: Expose steering anchor to userspace Saeed Mahameed
2022-07-13 22:31 ` Saeed Mahameed
2022-07-15 8:08 ` Jason Gunthorpe
2022-07-17 19:52 ` Saeed Mahameed
2022-07-18 12:03 ` Leon Romanovsky
2022-07-19 17:54 ` [PATCH mlx5-next 0/5] mlx5-next updates 2022-07-03 Leon Romanovsky
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20220703205407.110890-1-saeed@kernel.org \
--to=saeed@kernel.org \
--cc=jgg@nvidia.com \
--cc=leonro@nvidia.com \
--cc=linux-rdma@vger.kernel.org \
--cc=netdev@vger.kernel.org \
--cc=saeedm@nvidia.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).