[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <1578506740-22188-1-git-send-email-yishaih@mellanox.com>
Date: Wed, 8 Jan 2020 20:05:30 +0200
From: Yishai Hadas <yishaih@...lanox.com>
To: linux-rdma@...r.kernel.org, jgg@...lanox.com, dledford@...hat.com
Cc: saeedm@...lanox.com, yishaih@...lanox.com, maorg@...lanox.com,
michaelgur@...lanox.com, netdev@...r.kernel.org
Subject: [PATCH rdma-next 00/10] Relaxed ordering memory regions
This series adds an ioctl command to allocate an async event file followed by a
new ioctl command to get a device context.
The get device context command enables reading some core generic capabilities
such as supporting an optional MR access flags by IB core and its related
drivers.
Once the above is enabled, a new optional MR access flag named
IB_UVERBS_ACCESS_RELAXED_ORDERING is added and is used by mlx5 driver.
This optional flag allows creation of relaxed ordering memory regions. Access
through such MRs can improve performance by allowing the system to reorder
certain accesses.
As relaxed ordering is an optimization, drivers that do not support it can
simply ignore it.
Note: This series relies on the 'Refactoring FD usage' series [1] that was sent
to rdma-next.
[1] https://patchwork.kernel.org/project/linux-rdma/list/?series=225541
Yishai
Jason Gunthorpe (3):
RDMA/core: Add UVERBS_METHOD_ASYNC_EVENT_ALLOC
RDMA/core: Remove ucontext_lock from the uverbs_destry_ufile_hw() path
RDMA/uverbs: Add ioctl command to get a device context
Michael Guralnik (7):
net/mlx5: Expose relaxed ordering bits
RDMA/uverbs: Verify MR access flags
RDMA/core: Add optional access flags range
RDMA/efa: Allow passing of optional access flags for MR registration
RDMA/uverbs: Add new relaxed ordering memory region access flag
RDMA/core: Add the core support field to METHOD_GET_CONTEXT
RDMA/mlx5: Set relaxed ordering when requested
drivers/infiniband/core/rdma_core.c | 21 +---
drivers/infiniband/core/uverbs.h | 3 +
drivers/infiniband/core/uverbs_cmd.c | 133 ++++++++++++---------
drivers/infiniband/core/uverbs_main.c | 11 +-
.../infiniband/core/uverbs_std_types_async_fd.c | 21 +++-
drivers/infiniband/core/uverbs_std_types_device.c | 38 ++++++
drivers/infiniband/hw/efa/efa_verbs.c | 1 +
drivers/infiniband/hw/mlx5/mlx5_ib.h | 5 +-
drivers/infiniband/hw/mlx5/mr.c | 19 ++-
drivers/infiniband/hw/mlx5/odp.c | 2 +-
drivers/infiniband/hw/mlx5/qp.c | 2 +-
include/linux/mlx5/mlx5_ifc.h | 7 +-
include/rdma/ib_verbs.h | 8 +-
include/uapi/rdma/ib_user_ioctl_cmds.h | 14 +++
include/uapi/rdma/ib_user_ioctl_verbs.h | 12 ++
15 files changed, 209 insertions(+), 88 deletions(-)
--
1.8.3.1
Powered by blists - more mailing lists