[PATCH rdma-core 0/5] Introduce NULL MR type

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



This series from Yonatan introduces the NULL MR type and its related verbs.
It is used to force local HCA operations to skip the PCI bus access, while keeping
track of the processed length in the ibv_sge handling.

Meaning, instead of a PCI write access the HCA leaves the target memory
untouched, and skips filling that packet section.
Similar behavior is done upon send, the HCA skips data which is pointed
by that NULL MR and saves PCI bus access.
This functionality saves PCI read/write operations and improve performance.

The matching kernel part was sent into rdma-next few days ago.

PR:
https://github.com/linux-rdma/rdma-core/pull/351

Yishai

Jason Gunthorpe (1):
  verbs: Do not use struct ibv_context_ops within the .c files

Yishai Hadas (1):
  Update kernel headers

Yonatan Cohen (3):
  verbs: Replace ibv_mr with verbs_mr
  verbs: Add alloc_null_mr verb
  mlx5: Add support for ibv_alloc_null_mr

 kernel-headers/rdma/mlx5-abi.h             |  6 +-
 kernel-headers/rdma/mlx5_user_ioctl_cmds.h | 73 +++++++++++++++++++++++
 libibverbs/cmd.c                           | 30 +++++-----
 libibverbs/cmd_dm.c                        | 18 +++---
 libibverbs/cmd_fallback.c                  |  3 +-
 libibverbs/device.c                        | 16 ++---
 libibverbs/driver.h                        | 28 +++++++--
 libibverbs/dummy_ops.c                     | 95 ++++++++++++++++++++----------
 libibverbs/ibverbs.h                       | 14 ++++-
 libibverbs/man/CMakeLists.txt              |  1 +
 libibverbs/man/ibv_alloc_null_mr.3.md      | 55 +++++++++++++++++
 libibverbs/verbs.c                         | 55 +++++++++--------
 libibverbs/verbs.h                         | 84 +++++++++++++-------------
 providers/bnxt_re/main.h                   |  2 +-
 providers/bnxt_re/verbs.c                  | 10 ++--
 providers/bnxt_re/verbs.h                  |  2 +-
 providers/cxgb3/iwch.h                     |  8 +--
 providers/cxgb3/verbs.c                    | 20 +++----
 providers/cxgb4/libcxgb4.h                 |  8 +--
 providers/cxgb4/verbs.c                    | 18 +++---
 providers/hfi1verbs/hfiverbs.h             |  2 +-
 providers/hfi1verbs/verbs.c                | 18 +++---
 providers/hns/hns_roce_u.h                 |  4 +-
 providers/hns/hns_roce_u_verbs.c           | 22 +++----
 providers/i40iw/i40iw_umain.h              |  6 +-
 providers/i40iw/i40iw_uverbs.c             | 43 +++++++-------
 providers/ipathverbs/ipathverbs.h          |  2 +-
 providers/ipathverbs/verbs.c               | 18 +++---
 providers/mlx4/mlx4.h                      |  4 +-
 providers/mlx4/verbs.c                     | 24 ++++----
 providers/mlx5/mlx5.c                      | 13 ++++
 providers/mlx5/mlx5.h                      | 11 ++--
 providers/mlx5/qp.c                        | 27 +++++++--
 providers/mlx5/verbs.c                     | 52 ++++++++++++----
 providers/mthca/ah.c                       |  2 +-
 providers/mthca/mthca.h                    |  2 +-
 providers/mthca/verbs.c                    | 36 +++++------
 providers/nes/nes_umain.h                  |  6 +-
 providers/nes/nes_uverbs.c                 | 39 ++++++------
 providers/ocrdma/ocrdma_main.h             |  4 +-
 providers/ocrdma/ocrdma_verbs.c            | 12 ++--
 providers/qedr/qelr.h                      |  2 +-
 providers/qedr/qelr_main.h                 |  2 +-
 providers/qedr/qelr_verbs.c                | 18 +++---
 providers/qedr/qelr_verbs.h                |  2 +-
 providers/rxe/rxe.c                        | 19 +++---
 providers/vmw_pvrdma/pvrdma.h              |  2 +-
 providers/vmw_pvrdma/verbs.c               | 18 +++---
 48 files changed, 611 insertions(+), 345 deletions(-)
 create mode 100644 libibverbs/man/ibv_alloc_null_mr.3.md

-- 
1.8.3.1

--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Photo]     [Yosemite News]     [Yosemite Photos]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux