From: Stanislav Fomichev <stfomichev@gmail.com>
To: David Ahern <dsahern@kernel.org>
Cc: Leon Romanovsky <leon@kernel.org>,
Jason Gunthorpe <jgg@nvidia.com>,
Saeed Mahameed <saeed@kernel.org>, Jiri Pirko <jiri@resnulli.us>,
Jakub Kicinski <kuba@kernel.org>,
Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
Andy Gospodarek <andrew.gospodarek@broadcom.com>,
Aron Silverton <aron.silverton@oracle.com>,
Dan Williams <dan.j.williams@intel.com>,
Daniel Vetter <daniel.vetter@ffwll.ch>,
Dave Jiang <dave.jiang@intel.com>,
Christoph Hellwig <hch@infradead.org>,
Itay Avraham <itayavr@nvidia.com>, Jiri Pirko <jiri@nvidia.com>,
Jonathan Cameron <Jonathan.Cameron@huawei.com>,
Leonid Bloch <lbloch@nvidia.com>,
linux-cxl@vger.kernel.org, linux-rdma@vger.kernel.org,
netdev@vger.kernel.org, Saeed Mahameed <saeedm@nvidia.com>,
"Nelson, Shannon" <shannon.nelson@amd.com>
Subject: Re: [PATCH v5 0/8] Introduce fwctl subystem
Date: Sun, 16 Mar 2025 00:34:28 -0700 [thread overview]
Message-ID: <Z9Z_BC4GBTiFsONJ@mini-arch> (raw)
In-Reply-To: <553dff52-f61a-4f16-af4c-72d2d2c6bc3d@kernel.org>
On 03/14, David Ahern wrote:
> On 3/12/25 11:34 AM, Stanislav Fomichev wrote:
> >> More specifically, I do not see netdev APIs ever recognizing RDMA
> >> concepts like domains and memory regions. For us, everything is relative
> >> to a domain and a region - e.g., whether a queue is created for a netdev
> >> device or an IB QP both use the same common internal APIs. I would
> >> prefer not to use fwctl for something so basic.
> >
> > What specifically do you mean here by 'memory regions'? Ne
>
> netdev queues and flows are a subset of RDMA operations, so I mean MRs
> as in:
>
> IBV_REG_MR(3) Libibverbs Programmer's Manual
>
>
> NAME
> ibv_reg_mr, ibv_reg_mr_iova, ibv_reg_dmabuf_mr, ibv_dereg_mr -
> register or deregister a memory region (MR)
>
> SYNOPSIS
> #include <infiniband/verbs.h>
>
> struct ibv_mr *ibv_reg_mr(struct ibv_pd *pd, void *addr,
> size_t length, int access);
>
> struct ibv_mr *ibv_reg_mr_iova(struct ibv_pd *pd, void *addr,
> size_t length, uint64_t hca_va,
> int access);
>
> struct ibv_mr *ibv_reg_dmabuf_mr(struct ibv_pd *pd, uint64_t offset,
> size_t length, uint64_t iova,
> int fd, int access);
>
> int ibv_dereg_mr(struct ibv_mr *mr);
>
> DESCRIPTION
> ibv_reg_mr() registers a memory region (MR) associated with the
> protection domain pd. The MR's starting address is addr and its size is
> length. The argument access describes the desired mem‐
> ory protection attributes; it is either 0 or the bitwise OR of
> one or more of the following flags:
>
> ...
Sure, and netdev has:
-
name: bind-rx
doc: Bind dmabuf to netdev
attribute-set: dmabuf
flags: [ admin-perm ]
do:
request:
attributes:
- ifindex
- fd
- queues
reply:
attributes:
- id
Which accepts dmabuf fd. Looks very similar to ibv_reg_dmabuf_mr to me.
And I think we can safely ignore ibv_reg_mr_iova which needs things
like proprietary nvidia-peermem to function.
My point is: I don't think netdev is as opposed to memory regions as
you think it is. As long as you come up with sensible new UAPI and
as long as everything is in the open, it's up for discussion.
next prev parent reply other threads:[~2025-03-16 7:34 UTC|newest]
Thread overview: 56+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-02-28 0:26 [PATCH v5 0/8] Introduce fwctl subystem Jason Gunthorpe
2025-02-28 0:26 ` [PATCH v5 1/8] fwctl: Add basic structure for a class subsystem with a cdev Jason Gunthorpe
2025-02-28 0:26 ` [PATCH v5 2/8] fwctl: Basic ioctl dispatch for the character device Jason Gunthorpe
2025-02-28 0:26 ` [PATCH v5 3/8] fwctl: FWCTL_INFO to return basic information about the device Jason Gunthorpe
2025-02-28 0:26 ` [PATCH v5 4/8] taint: Add TAINT_FWCTL Jason Gunthorpe
2025-02-28 0:26 ` [PATCH v5 5/8] fwctl: FWCTL_RPC to execute a Remote Procedure Call to device firmware Jason Gunthorpe
2025-02-28 0:26 ` [PATCH v5 6/8] fwctl: Add documentation Jason Gunthorpe
2025-03-15 2:53 ` Bagas Sanjaya
2025-02-28 0:26 ` [PATCH v5 7/8] fwctl/mlx5: Support for communicating with mlx5 fw Jason Gunthorpe
2025-03-02 12:11 ` Leon Romanovsky
2025-03-04 17:50 ` Jason Gunthorpe
2025-02-28 0:26 ` [PATCH v5 8/8] mlx5: Create an auxiliary device for fwctl_mlx5 Jason Gunthorpe
2025-03-02 12:09 ` Leon Romanovsky
2025-03-04 1:53 ` [PATCH v5 0/8] Introduce fwctl subystem Jakub Kicinski
2025-03-04 14:00 ` Jason Gunthorpe
2025-03-04 17:59 ` Saeed Mahameed
2025-03-05 0:42 ` Jakub Kicinski
2025-03-05 13:32 ` Jason Gunthorpe
2025-03-05 13:43 ` Leon Romanovsky
2025-03-05 15:08 ` Jiri Pirko
2025-03-05 15:22 ` Leon Romanovsky
2025-03-05 15:56 ` Jiri Pirko
2025-03-05 18:17 ` David Ahern
2025-03-05 18:28 ` Leon Romanovsky
2025-03-05 20:41 ` Saeed Mahameed
2025-03-05 23:21 ` Jason Gunthorpe
2025-03-06 7:29 ` Leon Romanovsky
2025-03-11 11:23 ` David Ahern
2025-03-11 13:59 ` Leon Romanovsky
2025-03-12 9:31 ` David Ahern
2025-03-12 10:34 ` Stanislav Fomichev
2025-03-14 22:34 ` David Ahern
2025-03-16 7:34 ` Stanislav Fomichev [this message]
2025-03-17 12:30 ` Jason Gunthorpe
2025-03-11 14:27 ` Nelson, Shannon
2025-03-13 12:30 ` David Ahern
2025-03-13 12:48 ` Leon Romanovsky
2025-03-13 19:59 ` Nelson, Shannon
2025-03-14 5:37 ` Greg Kroah-Hartman
2025-03-14 18:39 ` Leon Romanovsky
2025-03-14 18:09 ` Jacob Keller
2025-03-17 12:33 ` Jason Gunthorpe
2025-03-17 19:00 ` David Ahern
2025-03-17 20:33 ` Keller, Jacob E
2025-03-18 13:20 ` Greg Kroah-Hartman
2025-03-18 13:25 ` Jason Gunthorpe
2025-03-18 15:39 ` Dave Jiang
2025-03-18 16:06 ` Greg Kroah-Hartman
2025-03-19 5:48 ` Przemek Kitszel
2025-03-19 8:14 ` Leon Romanovsky
2025-03-19 10:46 ` Przemek Kitszel
2025-03-19 11:22 ` Leon Romanovsky
2025-03-19 8:17 ` Leon Romanovsky
2025-03-18 22:07 ` Keller, Jacob E
2025-03-06 2:16 ` Jakub Kicinski
2025-03-20 23:22 ` 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=Z9Z_BC4GBTiFsONJ@mini-arch \
--to=stfomichev@gmail.com \
--cc=Jonathan.Cameron@huawei.com \
--cc=andrew.gospodarek@broadcom.com \
--cc=aron.silverton@oracle.com \
--cc=dan.j.williams@intel.com \
--cc=daniel.vetter@ffwll.ch \
--cc=dave.jiang@intel.com \
--cc=dsahern@kernel.org \
--cc=gregkh@linuxfoundation.org \
--cc=hch@infradead.org \
--cc=itayavr@nvidia.com \
--cc=jgg@nvidia.com \
--cc=jiri@nvidia.com \
--cc=jiri@resnulli.us \
--cc=kuba@kernel.org \
--cc=lbloch@nvidia.com \
--cc=leon@kernel.org \
--cc=linux-cxl@vger.kernel.org \
--cc=linux-rdma@vger.kernel.org \
--cc=netdev@vger.kernel.org \
--cc=saeed@kernel.org \
--cc=saeedm@nvidia.com \
--cc=shannon.nelson@amd.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).