On 1/9/2020 4:04 PM, Yishai Hadas wrote:
This series exposes an IBV_ACCESS_RELAXED_ORDERING optional MR access flag. 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. The series uses the new ioctl command to get a device context, this command enables reading some core generic capabilities such as supporting an optional MR access flags by IB core and its related drivers. This capability enables transparent masking of the optional flags in libibverbs when the kernel doesn't support the MR optional access mode. The series is based on an RFC that was sent to the ML [1], the matching kernel series was sent to 'for-next'. [1] https://www.spinics.net/lists/linux-rdma/msg86188.html PR was sent: https://github.com/linux-rdma/rdma-core/pull/660 Yishai Michael Guralnik (6): verbs: Move free_context from verbs_device_ops to verbs_context_ops verbs: Move alloc_context to ioctl verbs: Relaxed ordering memory regions mlx5: Add optional access flags range to DM pyverbs: Add relaxed ordering access flag tests: Add relaxed ordering access test Yishai Hadas (1): Update kernel headers debian/libibverbs1.symbols | 2 + kernel-headers/rdma/ib_user_ioctl_cmds.h | 15 ++++++ kernel-headers/rdma/ib_user_ioctl_verbs.h | 12 +++++ libibverbs/CMakeLists.txt | 2 +- libibverbs/cmd.c | 18 ------- libibverbs/cmd_device.c | 79 +++++++++++++++++++++++++++++++ libibverbs/device.c | 5 +- libibverbs/driver.h | 3 +- libibverbs/dummy_ops.c | 7 +++ libibverbs/libibverbs.map.in | 5 ++ libibverbs/man/ibv_reg_mr.3 | 2 + libibverbs/verbs.c | 13 +++++ libibverbs/verbs.h | 51 +++++++++++++++++++- libibverbs/verbs_api.h | 2 + providers/bnxt_re/main.c | 6 ++- providers/cxgb4/dev.c | 4 +- providers/efa/efa.c | 4 +- providers/hfi1verbs/hfiverbs.c | 4 +- providers/hns/hns_roce_u.c | 4 +- providers/i40iw/i40iw_umain.c | 6 ++- providers/ipathverbs/ipathverbs.c | 4 +- providers/mlx4/mlx4.c | 4 +- providers/mlx5/mlx5.c | 4 +- providers/mlx5/verbs.c | 3 +- providers/mthca/mthca.c | 6 ++- providers/ocrdma/ocrdma_main.c | 6 ++- providers/qedr/qelr_main.c | 4 +- providers/rxe/rxe.c | 6 ++- providers/siw/siw.c | 3 +- providers/vmw_pvrdma/pvrdma_main.c | 4 +- pyverbs/libibverbs_enums.pxd | 1 + tests/CMakeLists.txt | 5 +- tests/test_relaxed_ordering.py | 55 +++++++++++++++++++++ 33 files changed, 301 insertions(+), 48 deletions(-) create mode 100644 tests/test_relaxed_ordering.py
The PR was merged, thanks. Yishai