From: Bob Pearson <rpearsonhpe@gmail.com>
To: jgg@nvidia.com, zyjzyj2000@gmail.com, linux-rdma@vger.kernel.org
Cc: Bob Pearson <rpearsonhpe@gmail.com>
Subject: [PATCH v3 1/6] RDMA/rxe: Move AV from rxe_send_wqe to rxe_send_wr
Date: Thu, 22 Jul 2021 16:22:40 -0500 [thread overview]
Message-ID: <20210722212244.412157-2-rpearsonhpe@gmail.com> (raw)
In-Reply-To: <20210722212244.412157-1-rpearsonhpe@gmail.com>
Move the struct rxe_av av from rxe_send_wqe to rxe_send_wr placing
it in wr.ud at the same offset as it was previously. This has the
effect of increasing the size of struct rxe_send_wr and keeping the size of
struct rxe_send_wqe the same. This better reflects the use of this field
which is only used for UD sends. This change has no effect on ABI
compatibility so the modified rxe driver will operate with older versions
of rdma-core.
Signed-off-by: Bob Pearson <rpearsonhpe@gmail.com>
---
v3:
Per Jason's suggestion split up this patch into two pieces one of which
just moves AV and combine adding the ah_num changes to the third patch.
drivers/infiniband/sw/rxe/rxe_av.c | 2 +-
drivers/infiniband/sw/rxe/rxe_verbs.c | 3 ++-
include/uapi/rdma/rdma_user_rxe.h | 4 +++-
3 files changed, 6 insertions(+), 3 deletions(-)
diff --git a/drivers/infiniband/sw/rxe/rxe_av.c b/drivers/infiniband/sw/rxe/rxe_av.c
index da2e867a1ed9..85580ea5eed0 100644
--- a/drivers/infiniband/sw/rxe/rxe_av.c
+++ b/drivers/infiniband/sw/rxe/rxe_av.c
@@ -107,5 +107,5 @@ struct rxe_av *rxe_get_av(struct rxe_pkt_info *pkt)
if (qp_type(pkt->qp) == IB_QPT_RC || qp_type(pkt->qp) == IB_QPT_UC)
return &pkt->qp->pri_av;
- return (pkt->wqe) ? &pkt->wqe->av : NULL;
+ return (pkt->wqe) ? &pkt->wqe->wr.wr.ud.av : NULL;
}
diff --git a/drivers/infiniband/sw/rxe/rxe_verbs.c b/drivers/infiniband/sw/rxe/rxe_verbs.c
index f7b1a1f64c13..725015a2e84c 100644
--- a/drivers/infiniband/sw/rxe/rxe_verbs.c
+++ b/drivers/infiniband/sw/rxe/rxe_verbs.c
@@ -605,7 +605,8 @@ static void init_send_wqe(struct rxe_qp *qp, const struct ib_send_wr *ibwr,
if (qp_type(qp) == IB_QPT_UD ||
qp_type(qp) == IB_QPT_SMI ||
qp_type(qp) == IB_QPT_GSI)
- memcpy(&wqe->av, &to_rah(ud_wr(ibwr)->ah)->av, sizeof(wqe->av));
+ memcpy(&wqe->wr.wr.ud.av, &to_rah(ud_wr(ibwr)->ah)->av,
+ sizeof(struct rxe_av));
if (unlikely(ibwr->send_flags & IB_SEND_INLINE))
copy_inline_data_to_wqe(wqe, ibwr);
diff --git a/include/uapi/rdma/rdma_user_rxe.h b/include/uapi/rdma/rdma_user_rxe.h
index e283c2220aba..2f1ebbe96434 100644
--- a/include/uapi/rdma/rdma_user_rxe.h
+++ b/include/uapi/rdma/rdma_user_rxe.h
@@ -98,6 +98,9 @@ struct rxe_send_wr {
__u32 remote_qpn;
__u32 remote_qkey;
__u16 pkey_index;
+ __u16 reserved;
+ __u32 pad[5];
+ struct rxe_av av;
} ud;
struct {
__aligned_u64 addr;
@@ -148,7 +151,6 @@ struct rxe_dma_info {
struct rxe_send_wqe {
struct rxe_send_wr wr;
- struct rxe_av av;
__u32 status;
__u32 state;
__aligned_u64 iova;
--
2.30.2
next prev parent reply other threads:[~2021-07-22 21:23 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-07-22 21:22 [PATCH for-next v3 0/5] Replace AV by AH in UD sends Bob Pearson
2021-07-22 21:22 ` Bob Pearson [this message]
2021-07-22 21:22 ` [PATCH v3 2/6] RDMA/rxe: Change AH objects to indexed Bob Pearson
2021-07-22 21:22 ` [PATCH v3 3/6] RDMA/rxe: Create AH index and return to user space Bob Pearson
2021-08-27 12:51 ` Jason Gunthorpe
2021-07-22 21:22 ` [PATCH v3 4/6] RDMA/rxe: Replace ah->pd by ah->ibah.pd Bob Pearson
2021-07-22 21:22 ` [PATCH v3 5/6] RDMA/rxe: Lookup kernel AH from ah index in UD WQEs Bob Pearson
2021-08-27 12:53 ` Jason Gunthorpe
2021-07-22 21:22 ` [PATCH v3 6/6] RDMA/rxe: Convert kernel UD post send to use ah_num Bob Pearson
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=20210722212244.412157-2-rpearsonhpe@gmail.com \
--to=rpearsonhpe@gmail.com \
--cc=jgg@nvidia.com \
--cc=linux-rdma@vger.kernel.org \
--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).