mbox series

[v4,for-next,0/7] rdma_rxe: add memory windows to rxe

Message ID 20200903224039.437391-1-rpearson@hpe.com (mailing list archive)
Headers show
Series rdma_rxe: add memory windows to rxe | expand

Message

Bob Pearson Sept. 3, 2020, 10:40 p.m. UTC
This set of patches adds support to rdma_rxe for:

	alloc_mw (type 1 and 2)
	dealloc_mw
	bind_mw as a user API (type 1)
	bind_mw as a local send queue operationa (type 2)
	invalidate mw as a local send queue operation
	invalidate mw as a remote send operation
	memory access to bound MRs via MWs with VA or ZB MWs

Changes in this version from the previous version:

	Dropped patches that have already been picked up in for-next
	rearranged the order to be more logical and avoid throw away
	code in stubs.
	This work is focused on MWs. There are some areas
	exposed in the existing driver that should be improved
	but that can be done later.

Bob Pearson (7):
  ib_user_verbs.h: Added missing WR and WC opcodes
  rdma_rxe: Separated MEM into MR and MW objects.
  rdma_rxe: enabled MW objects
  rdma_rxe: Let pools support both keys and indices
  rdma_rxe: Added alloc_mw and dealloc_mw verbs
  rdma_rxe: added bind_mw and invalidate_mw verbs
  rdma_rxe: add memory access through MWs

 drivers/infiniband/sw/rxe/Makefile     |   1 +
 drivers/infiniband/sw/rxe/rxe.c        |   1 +
 drivers/infiniband/sw/rxe/rxe_comp.c   |   5 +-
 drivers/infiniband/sw/rxe/rxe_loc.h    |  43 ++-
 drivers/infiniband/sw/rxe/rxe_mr.c     | 350 +++++++++++----------
 drivers/infiniband/sw/rxe/rxe_mw.c     | 414 +++++++++++++++++++++++++
 drivers/infiniband/sw/rxe/rxe_opcode.c |  11 +-
 drivers/infiniband/sw/rxe/rxe_opcode.h |   1 -
 drivers/infiniband/sw/rxe/rxe_param.h  |  10 +-
 drivers/infiniband/sw/rxe/rxe_pool.c   | 114 +++----
 drivers/infiniband/sw/rxe/rxe_pool.h   |  34 +-
 drivers/infiniband/sw/rxe/rxe_req.c    | 113 ++++---
 drivers/infiniband/sw/rxe/rxe_resp.c   | 105 +++++--
 drivers/infiniband/sw/rxe/rxe_verbs.c  |  72 +++--
 drivers/infiniband/sw/rxe/rxe_verbs.h  |  61 ++--
 include/rdma/ib_verbs.h                |  16 +-
 include/uapi/rdma/ib_user_verbs.h      |  11 +
 include/uapi/rdma/rdma_user_rxe.h      |  44 ++-
 18 files changed, 1026 insertions(+), 380 deletions(-)
 create mode 100644 drivers/infiniband/sw/rxe/rxe_mw.c