From: Bob Pearson <rpearsonhpe@gmail.com>
To: linux-rdma@vger.kernel.org, zyjzyj2000@gmail.com
Cc: Bob Pearson <rpearson@hpe.com>
Subject: [PATCH v3 00/17] Memory window support for rdma_rxe
Date: Thu, 20 Aug 2020 17:46:21 -0500 [thread overview]
Message-ID: <20200820224638.3212-1-rpearson@hpe.com> (raw)
This set of patches implements the memory windows verbs, local and remote send
operations. Each of these has been tested at a basic level and regressions
tests have been run to see that basic rxe functionality is OK. The rdma-core
pyverbs memory windows test cases run correctly.
I would encourage anyone who has test cases for MWs to run them against
this code and let me know if anything crops up.
There is a matching patch for rdma-core the user space library that is required
to run user space MW applications.
The first two patches clean up checkpatch warnings for the existing rxe source
code. They can be used separately if desired.
The third and fourth patches are a prerequisite for the rest of the set but
are independant and add some WR and WC opcodes to ib_verbs.h and ib_user_verb.h.
The remaining patches implement the memory windows extensions.
Bob Pearson
Bob Pearson (17):
rdma_rxe: Added SPDX headers to rxe source files
rdma_rxe: Fixed style warnings
ib_user_verbs.h: Added ib_uverbs_wc_opcode
ib_verbs.h: Added missing IB_WR_BIND_MW opcode
rdma_rxe: Added bind_mw parameters to rxe_send_wr
rdma_rxe: Added stubs for alloc_mw and dealloc_mw verbs
rdma_rxe: Separated MR and MW objects.
rdma_rxe: Added mw object
rdma_rxe: Extended pools to support both keys and indices
rdma_rxe: Implemented functional alloc_mw and dealloc_mw APIs
rdma_rxe: Address an issue with hardened user copy
rdma_rxe: Added bind mw API stub
rdma_rxe: Give MR and MW objects indices and keys
rdma_rxe: Added stub for invalidate mw
rdma_rxe: Added functional bind and invalidate MW ops
rdma_rxe: Implemented read/write/atomic access to MW
rdma_rxe: minor cleanups
drivers/infiniband/sw/rxe/Makefile | 1 +
drivers/infiniband/sw/rxe/rxe.c | 33 +-
drivers/infiniband/sw/rxe/rxe.h | 31 +-
drivers/infiniband/sw/rxe/rxe_av.c | 31 +-
drivers/infiniband/sw/rxe/rxe_comp.c | 39 +-
drivers/infiniband/sw/rxe/rxe_cq.c | 31 +-
drivers/infiniband/sw/rxe/rxe_hdr.h | 31 +-
drivers/infiniband/sw/rxe/rxe_hw_counters.c | 31 +-
drivers/infiniband/sw/rxe/rxe_hw_counters.h | 31 +-
drivers/infiniband/sw/rxe/rxe_icrc.c | 31 +-
drivers/infiniband/sw/rxe/rxe_loc.h | 88 ++--
drivers/infiniband/sw/rxe/rxe_mcast.c | 31 +-
drivers/infiniband/sw/rxe/rxe_mmap.c | 31 +-
drivers/infiniband/sw/rxe/rxe_mr.c | 385 ++++++++---------
drivers/infiniband/sw/rxe/rxe_mw.c | 431 ++++++++++++++++++++
drivers/infiniband/sw/rxe/rxe_net.c | 33 +-
drivers/infiniband/sw/rxe/rxe_net.h | 31 +-
drivers/infiniband/sw/rxe/rxe_opcode.c | 42 +-
drivers/infiniband/sw/rxe/rxe_opcode.h | 32 +-
drivers/infiniband/sw/rxe/rxe_param.h | 42 +-
drivers/infiniband/sw/rxe/rxe_pool.c | 165 ++++----
drivers/infiniband/sw/rxe/rxe_pool.h | 69 ++--
drivers/infiniband/sw/rxe/rxe_qp.c | 34 +-
drivers/infiniband/sw/rxe/rxe_queue.c | 31 +-
drivers/infiniband/sw/rxe/rxe_queue.h | 31 +-
drivers/infiniband/sw/rxe/rxe_recv.c | 31 +-
drivers/infiniband/sw/rxe/rxe_req.c | 154 +++----
drivers/infiniband/sw/rxe/rxe_resp.c | 196 +++++----
drivers/infiniband/sw/rxe/rxe_srq.c | 31 +-
drivers/infiniband/sw/rxe/rxe_sysfs.c | 31 +-
drivers/infiniband/sw/rxe/rxe_task.c | 31 +-
drivers/infiniband/sw/rxe/rxe_task.h | 33 +-
drivers/infiniband/sw/rxe/rxe_verbs.c | 114 +++---
drivers/infiniband/sw/rxe/rxe_verbs.h | 97 ++---
include/rdma/ib_verbs.h | 16 +-
include/uapi/rdma/ib_user_verbs.h | 11 +
include/uapi/rdma/rdma_user_rxe.h | 50 ++-
37 files changed, 1233 insertions(+), 1328 deletions(-)
create mode 100644 drivers/infiniband/sw/rxe/rxe_mw.c
--
2.25.1
next reply other threads:[~2020-08-20 22:47 UTC|newest]
Thread overview: 34+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-08-20 22:46 Bob Pearson [this message]
2020-08-20 22:46 ` [PATCH v3 01/17] rdma_rxe: Added SPDX headers to rxe source files Bob Pearson
2020-08-24 10:03 ` Leon Romanovsky
2020-08-20 22:46 ` [PATCH v3 02/17] rdma_rxe: Fixed style warnings Bob Pearson
2020-08-27 12:52 ` Jason Gunthorpe
2020-08-20 22:46 ` [PATCH v3 03/17] ib_user_verbs.h: Added ib_uverbs_wc_opcode Bob Pearson
2020-08-27 12:53 ` Jason Gunthorpe
2020-08-20 22:46 ` [PATCH v3 04/17] ib_verbs.h: Added missing IB_WR_BIND_MW opcode Bob Pearson
2020-08-27 12:54 ` Jason Gunthorpe
2020-08-20 22:46 ` [PATCH v3 05/17] rdma_rxe: Added bind_mw parameters to rxe_send_wr Bob Pearson
2020-08-27 12:56 ` Jason Gunthorpe
2020-08-20 22:46 ` [PATCH v3 06/17] rdma_rxe: Added stubs for alloc_mw and dealloc_mw verbs Bob Pearson
2020-08-27 12:56 ` Jason Gunthorpe
2020-08-20 22:46 ` [PATCH v3 07/17] rdma_rxe: Separated MR and MW objects Bob Pearson
2020-08-20 22:46 ` [PATCH v3 08/17] rdma_rxe: Added mw object Bob Pearson
2020-08-22 3:39 ` Zhu Yanjun
2020-08-20 22:46 ` [PATCH v3 09/17] rdma_rxe: Extended pools to support both keys and indices Bob Pearson
2020-08-20 22:46 ` [PATCH v3 10/17] rdma_rxe: Implemented functional alloc_mw and dealloc_mw APIs Bob Pearson
2020-08-20 22:46 ` [PATCH v3 11/17] rdma_rxe: Address an issue with hardened user copy Bob Pearson
2020-08-22 3:32 ` Zhu Yanjun
2020-08-22 4:16 ` Bob Pearson
2020-08-24 8:47 ` Leon Romanovsky
2020-08-24 8:52 ` Leon Romanovsky
2020-08-24 23:52 ` Bob Pearson
2020-08-25 5:04 ` Leon Romanovsky
2020-08-20 22:46 ` [PATCH v3 12/17] rdma_rxe: Added bind mw API stub Bob Pearson
2020-08-20 22:46 ` [PATCH v3 13/17] rdma_rxe: Give MR and MW objects indices and keys Bob Pearson
2020-08-20 22:46 ` [PATCH v3 14/17] rdma_rxe: Added stub for invalidate mw Bob Pearson
2020-08-20 22:46 ` [PATCH v3 15/17] rdma_rxe: Added functional bind and invalidate MW ops Bob Pearson
2020-08-20 22:46 ` [PATCH v3 16/17] rdma_rxe: Implemented read/write/atomic access to MW Bob Pearson
2020-08-20 22:46 ` [PATCH v3 17/17] rdma_rxe: minor cleanups Bob Pearson
[not found] ` <a153a775-9b53-3ccc-4c2a-ec76f863d1a1@gmail.com>
2020-08-22 4:05 ` Bob Pearson
2020-08-24 9:02 ` Leon Romanovsky
2020-08-27 13:00 ` Jason Gunthorpe
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20200820224638.3212-1-rpearson@hpe.com \
--to=rpearsonhpe@gmail.com \
--cc=linux-rdma@vger.kernel.org \
--cc=rpearson@hpe.com \
--cc=zyjzyj2000@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).