From: Leon Romanovsky <leon@kernel•org>
To: Abhijit Gangurde <abhijit.gangurde@amd•com>
Cc: jgg@ziepe•ca, brett.creeley@amd•com, andrew+netdev@lunn•ch,
davem@davemloft•net, edumazet@google•com, kuba@kernel•org,
pabeni@redhat•com, allen.hubbe@amd•com, nikhil.agarwal@amd•com,
linux-rdma@vger•kernel.org, netdev@vger•kernel.org,
linux-kernel@vger•kernel.org
Subject: Re: [PATCH 3/3] RDMA/ionic: Support QP transport mode selection in create and modify
Date: Mon, 11 May 2026 15:50:28 +0300 [thread overview]
Message-ID: <20260511125028.GJ15586@unreal> (raw)
In-Reply-To: <20260430123931.3256130-4-abhijit.gangurde@amd.com>
On Thu, Apr 30, 2026 at 06:09:31PM +0530, Abhijit Gangurde wrote:
> Allow userspace to specify the QP transport mode and number of
> reorder completion queue paths during QP creation and modification.
>
> Extend ionic_qp_req with transport_mode, num_rcq_paths, and
> ionic_flags fields. The transport mode selects the firmware QP type,
> ionic_flags are forwarded in the upper bits of priv_flags during
> QP creation, and num_rcq_paths is passed to firmware during QP
> modify.
>
> Co-developed-by: Allen Hubbe <allen.hubbe@amd•com>
> Signed-off-by: Allen Hubbe <allen.hubbe@amd•com>
> Signed-off-by: Abhijit Gangurde <abhijit.gangurde@amd•com>
> ---
> .../infiniband/hw/ionic/ionic_controlpath.c | 16 +++++++++++-----
> drivers/infiniband/hw/ionic/ionic_fw.h | 18 +++++++++++++++---
> drivers/infiniband/hw/ionic/ionic_ibdev.h | 1 +
> include/uapi/rdma/ionic-abi.h | 5 ++++-
> 4 files changed, 31 insertions(+), 9 deletions(-)
<...>
> +enum ionic_qp_transport_mode {
> + IONIC_QPT_TRANSPORT_ROCE_V2 = BIT(0),
> + IONIC_QPT_TRANSPORT_MRC = BIT(1),
> +};
> +
> /* admin queue qp type */
> enum ionic_qp_type {
> IONIC_QPT_RC,
> @@ -228,16 +235,21 @@ enum ionic_qp_type {
> IONIC_QPT_XRC_INI,
> IONIC_QPT_XRC_TGT,
> IONIC_QPT_XRC_SRQ,
> + IONIC_QPT_MRC,
> };
>
> -static inline int to_ionic_qp_type(enum ib_qp_type type)
> +static inline int to_ionic_qp_type(enum ib_qp_type type,
> + enum ionic_qp_transport_mode tm)
> {
> switch (type) {
> case IB_QPT_GSI:
> case IB_QPT_UD:
> return IONIC_QPT_UD;
> case IB_QPT_RC:
> - return IONIC_QPT_RC;
> + if (tm == IONIC_QPT_TRANSPORT_MRC)
> + return IONIC_QPT_MRC;
> + else
> + return IONIC_QPT_RC;
We have historically treated vendor-specific QP types as special cases and
routed them through IB_QPT_DRIVER.
IB_QPT_RC represents a standard RC QP and is expected to follow the
specification.
Thanks
next prev parent reply other threads:[~2026-05-11 12:50 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-04-30 12:39 [PATCH 0/3] Add Reorder Completion Queue (RCQ) support Abhijit Gangurde
2026-04-30 12:39 ` [PATCH 1/3] net: ionic: Fetch default QP transport mode and RCQ capabilities from firmware Abhijit Gangurde
2026-04-30 12:39 ` [PATCH 2/3] RDMA/ionic: Expose QP transport mode and RCQ sign bit to userspace Abhijit Gangurde
2026-04-30 12:39 ` [PATCH 3/3] RDMA/ionic: Support QP transport mode selection in create and modify Abhijit Gangurde
2026-05-11 12:50 ` Leon Romanovsky [this message]
2026-05-21 10:59 ` Abhijit Gangurde
2026-05-23 19:16 ` 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=20260511125028.GJ15586@unreal \
--to=leon@kernel$(echo .)org \
--cc=abhijit.gangurde@amd$(echo .)com \
--cc=allen.hubbe@amd$(echo .)com \
--cc=andrew+netdev@lunn$(echo .)ch \
--cc=brett.creeley@amd$(echo .)com \
--cc=davem@davemloft$(echo .)net \
--cc=edumazet@google$(echo .)com \
--cc=jgg@ziepe$(echo .)ca \
--cc=kuba@kernel$(echo .)org \
--cc=linux-kernel@vger$(echo .)kernel.org \
--cc=linux-rdma@vger$(echo .)kernel.org \
--cc=netdev@vger$(echo .)kernel.org \
--cc=nikhil.agarwal@amd$(echo .)com \
--cc=pabeni@redhat$(echo .)com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
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