From: Jason Gunthorpe <jgg@ziepe.ca>
To: "Christian König" <christian.koenig@amd.com>
Cc: Alex Williamson <alex@shazbot.org>,
Leon Romanovsky <leon@kernel.org>,
Bjorn Helgaas <bhelgaas@google.com>,
Logan Gunthorpe <logang@deltatee.com>,
Jens Axboe <axboe@kernel.dk>, Robin Murphy <robin.murphy@arm.com>,
Joerg Roedel <joro@8bytes.org>, Will Deacon <will@kernel.org>,
Marek Szyprowski <m.szyprowski@samsung.com>,
Andrew Morton <akpm@linux-foundation.org>,
Jonathan Corbet <corbet@lwn.net>,
Sumit Semwal <sumit.semwal@linaro.org>,
Kees Cook <kees@kernel.org>,
"Gustavo A. R. Silva" <gustavoars@kernel.org>,
Ankit Agrawal <ankita@nvidia.com>,
Yishai Hadas <yishaih@nvidia.com>,
Shameer Kolothum <skolothumtho@nvidia.com>,
Kevin Tian <kevin.tian@intel.com>,
Krishnakant Jaju <kjaju@nvidia.com>, Matt Ochs <mochs@nvidia.com>,
linux-pci@vger.kernel.org, linux-kernel@vger.kernel.org,
linux-block@vger.kernel.org, iommu@lists.linux.dev,
linux-mm@kvack.org, linux-doc@vger.kernel.org,
linux-media@vger.kernel.org, dri-devel@lists.freedesktop.org,
linaro-mm-sig@lists.linaro.org, kvm@vger.kernel.org,
linux-hardening@vger.kernel.org, Alex Mastro <amastro@fb.com>,
Nicolin Chen <nicolinc@nvidia.com>,
Vivek Kasireddy <vivek.kasireddy@intel.com>
Subject: Re: [PATCH v7 00/11] vfio/pci: Allow MMIO regions to be exported through dma-buf
Date: Tue, 18 Nov 2025 10:59:35 -0400 [thread overview]
Message-ID: <20251118145935.GI17968@ziepe.ca> (raw)
In-Reply-To: <3599880e-5b50-4bad-949b-0d3b1fb25f3f@amd.com>
On Tue, Nov 18, 2025 at 03:37:41PM +0100, Christian König wrote:
> Skimming over it my only concern is patch #6 which adds the helper
> to the common DMA-buf code and that in turn would need an in-deep
> review which I currently don't have time for.
I think you should trust Leon on the implementation. He knows what he
is doing here when it comes to the DMA API, since he made all the
patches so far to use it.
Please consider just reviewing the exported function signature:
+struct sg_table *dma_buf_map(struct dma_buf_attachment *attach,
+ struct p2pdma_provider *provider,
+ struct dma_buf_phys_vec *phys_vec,
+ size_t nr_ranges, size_t size,
+ enum dma_data_direction dir)
If issues are discovered inside the implementation later on then Leon
will be available to fix them.
The code is intended to implement that basic function signature which
can be thought of as dma_map_resource() done correctly for PCI
devices.
> So if we could keep those inside the VFIO driver for now I think
> that should be good to go.
That was several versions ago. Christoph is very strongly against
this, he wants to see the new DMA API used by wrapper functions in
subsytems related to how the subsystem's data structures work rather
than proliferate into drivers. I agree with this, so we need to go in
this direction.
Other options, like put the code in the DMA API area, are also not
going to be agreed because we really don't want this weird DMABUF use
of no-struct page scatterlist to leak out beyond DMABUF.
So, this is the start of a DMA mapping helper API for DMABUF related
data structures, it introduces a simplified mapping entry point for
drivers that only use MMIO.
As I said I expect this API surface to progress as other DRM drivers
are updated (hopefully DRM community will take on this), but there is
nothing wrong with starting by having a basic entry point for a narrow
use case.
Thanks,
Jason
prev parent reply other threads:[~2025-11-18 14:59 UTC|newest]
Thread overview: 25+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-11-06 14:16 [PATCH v7 00/11] vfio/pci: Allow MMIO regions to be exported through dma-buf Leon Romanovsky
2025-11-06 14:16 ` [PATCH v7 01/11] PCI/P2PDMA: Separate the mmap() support from the core logic Leon Romanovsky
2025-11-06 14:16 ` [PATCH v7 02/11] PCI/P2PDMA: Simplify bus address mapping API Leon Romanovsky
2025-11-06 14:16 ` [PATCH v7 03/11] PCI/P2PDMA: Refactor to separate core P2P functionality from memory allocation Leon Romanovsky
2025-11-06 14:16 ` [PATCH v7 04/11] PCI/P2PDMA: Provide an access to pci_p2pdma_map_type() function Leon Romanovsky
2025-11-06 14:16 ` [PATCH v7 05/11] PCI/P2PDMA: Document DMABUF model Leon Romanovsky
2025-11-07 6:15 ` Randy Dunlap
2025-11-07 16:01 ` Leon Romanovsky
2025-11-07 18:58 ` Randy Dunlap
2025-11-07 20:27 ` Leon Romanovsky
2025-11-06 14:16 ` [PATCH v7 06/11] dma-buf: provide phys_vec to scatter-gather mapping routine Leon Romanovsky
2025-11-06 14:16 ` [PATCH v7 07/11] vfio: Export vfio device get and put registration helpers Leon Romanovsky
2025-11-06 14:16 ` [PATCH v7 08/11] vfio/pci: Share the core device pointer while invoking feature functions Leon Romanovsky
2025-11-06 14:16 ` [PATCH v7 09/11] vfio/pci: Enable peer-to-peer DMA transactions by default Leon Romanovsky
2025-11-06 14:16 ` [PATCH v7 10/11] vfio/pci: Add dma-buf export support for MMIO regions Leon Romanovsky
2025-11-10 20:05 ` Alex Williamson
2025-11-06 14:16 ` [PATCH v7 11/11] vfio/nvgrace: Support get_dmabuf_phys Leon Romanovsky
2025-11-10 20:05 ` Alex Williamson
2025-11-10 20:28 ` Leon Romanovsky
2025-11-10 20:42 ` [PATCH v7 00/11] vfio/pci: Allow MMIO regions to be exported through dma-buf Alex Williamson
2025-11-11 8:54 ` Christian König
2025-11-17 15:36 ` Alex Williamson
2025-11-17 17:16 ` Jason Gunthorpe
2025-11-18 14:37 ` Christian König
2025-11-18 14:59 ` Jason Gunthorpe [this message]
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=20251118145935.GI17968@ziepe.ca \
--to=jgg@ziepe.ca \
--cc=akpm@linux-foundation.org \
--cc=alex@shazbot.org \
--cc=amastro@fb.com \
--cc=ankita@nvidia.com \
--cc=axboe@kernel.dk \
--cc=bhelgaas@google.com \
--cc=christian.koenig@amd.com \
--cc=corbet@lwn.net \
--cc=dri-devel@lists.freedesktop.org \
--cc=gustavoars@kernel.org \
--cc=iommu@lists.linux.dev \
--cc=joro@8bytes.org \
--cc=kees@kernel.org \
--cc=kevin.tian@intel.com \
--cc=kjaju@nvidia.com \
--cc=kvm@vger.kernel.org \
--cc=leon@kernel.org \
--cc=linaro-mm-sig@lists.linaro.org \
--cc=linux-block@vger.kernel.org \
--cc=linux-doc@vger.kernel.org \
--cc=linux-hardening@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-media@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=linux-pci@vger.kernel.org \
--cc=logang@deltatee.com \
--cc=m.szyprowski@samsung.com \
--cc=mochs@nvidia.com \
--cc=nicolinc@nvidia.com \
--cc=robin.murphy@arm.com \
--cc=skolothumtho@nvidia.com \
--cc=sumit.semwal@linaro.org \
--cc=vivek.kasireddy@intel.com \
--cc=will@kernel.org \
--cc=yishaih@nvidia.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).