All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH mlx5-next 0/3] Add ICM header-modify-pattern RDMA API
@ 2022-06-07 12:47 Leon Romanovsky
  2022-06-07 12:47 ` [PATCH mlx5-next 1/3] net/mlx5: Introduce header-modify-pattern ICM properties Leon Romanovsky
                   ` (3 more replies)
  0 siblings, 4 replies; 7+ messages in thread
From: Leon Romanovsky @ 2022-06-07 12:47 UTC (permalink / raw)
  To: Jason Gunthorpe
  Cc: Leon Romanovsky, Erez Shitrit, Eric Dumazet, Jakub Kicinski,
	linux-kernel, linux-rdma, netdev, Paolo Abeni, Saeed Mahameed,
	Yevgeny Kliteynik

From: Leon Romanovsky <leonro@nvidia.com>

SW steering manipulates packet's header using "modifying header" actions.
Many of these actions do the same operation, but use different data each time.
Currently we create and keep every one of these actions, which use expensive
and limited resources.

Now we introduce a new mechanism - pattern and argument, which splits
a modifying action into two parts:
1. action pattern: contains the operations to be applied on packet's header,
mainly set/add/copy of fields in the packet
2. action data/argument: contains the data to be used by each operation
in the pattern.

This way we reuse same patterns with different arguments to create new
modifying actions, and since many actions share the same operations, we end
up creating a small number of patterns that we keep in a dedicated cache.

These modify header patterns are implemented as new type of ICM memory,
so the following kernel patch series add the support for this new ICM type.

Thanks

Yevgeny Kliteynik (3):
  net/mlx5: Introduce header-modify-pattern ICM properties
  net/mlx5: Manage ICM of type modify-header pattern
  RDMA/mlx5: Support handling of modify-header pattern ICM area

 drivers/infiniband/hw/mlx5/dm.c               | 53 ++++++++++++-------
 drivers/infiniband/hw/mlx5/mr.c               |  1 +
 .../net/ethernet/mellanox/mlx5/core/lib/dm.c  | 42 +++++++++++++++
 include/linux/mlx5/driver.h                   |  1 +
 include/linux/mlx5/mlx5_ifc.h                 |  7 ++-
 include/uapi/rdma/mlx5_user_ioctl_verbs.h     |  1 +
 6 files changed, 85 insertions(+), 20 deletions(-)

-- 
2.36.1


^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2022-06-14 18:24 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-06-07 12:47 [PATCH mlx5-next 0/3] Add ICM header-modify-pattern RDMA API Leon Romanovsky
2022-06-07 12:47 ` [PATCH mlx5-next 1/3] net/mlx5: Introduce header-modify-pattern ICM properties Leon Romanovsky
2022-06-08  6:44   ` Saeed Mahameed
2022-06-07 12:47 ` [PATCH mlx5-next 2/3] net/mlx5: Manage ICM of type modify-header pattern Leon Romanovsky
2022-06-08  6:44   ` Saeed Mahameed
2022-06-07 12:47 ` [PATCH mlx5-next 3/3] RDMA/mlx5: Support handling of modify-header pattern ICM area Leon Romanovsky
2022-06-14 18:24 ` [PATCH mlx5-next 0/3] Add ICM header-modify-pattern RDMA API Saeed Mahameed

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.