From: Pavel Begunkov <asml.silence@gmail.com>
To: Christoph Hellwig <hch@lst.de>
Cc: "Jens Axboe" <axboe@kernel.dk>, "Keith Busch" <kbusch@kernel.org>,
"Sagi Grimberg" <sagi@grimberg.me>,
"Alexander Viro" <viro@zeniv.linux.org.uk>,
"Christian Brauner" <brauner@kernel.org>,
"Andrew Morton" <akpm@linux-foundation.org>,
"Sumit Semwal" <sumit.semwal@linaro.org>,
"Christian König" <christian.koenig@amd.com>,
linux-block@vger.kernel.org, linux-kernel@vger.kernel.org,
linux-nvme@lists.infradead.org, linux-fsdevel@vger.kernel.org,
io-uring@vger.kernel.org, linux-media@vger.kernel.org,
dri-devel@lists.freedesktop.org, linaro-mm-sig@lists.linaro.org,
"Nitesh Shetty" <nj.shetty@samsung.com>,
"Kanchan Joshi" <joshi.k@samsung.com>,
"Anuj Gupta" <anuj20.g@samsung.com>,
"Tushar Gohad" <tushar.gohad@intel.com>,
"William Power" <william.power@intel.com>,
"Phil Cayton" <phil.cayton@intel.com>,
"Jason Gunthorpe" <jgg@nvidia.com>
Subject: Re: [PATCH v3 05/10] lib: add dmabuf token infrastructure
Date: Mon, 18 May 2026 11:14:09 +0100 [thread overview]
Message-ID: <ebf41920-5852-428f-b98a-e0f44c8f3315@gmail.com> (raw)
In-Reply-To: <20260513082431.GA6461@lst.de>
On 5/13/26 09:24, Christoph Hellwig wrote:
> Naming and placement:
>
> This is about dma-buf based I/O. So I'd expect it to be named dma-buf-io
> and no io-dmabuf, and live in drivers/dma-buf and not the unrelated lib/.
> But I'd like to hear from the dma-buf maintainers about that.
Looking at what Ming is saying, it'd make more sense to keep some of the
parts like iterator and the file op more flexible and not automatically
imply dma-buf even if it's the main and for now the only medium. I.e.
ublk/fuse can use a similar interface for mapping buffers to the server
even without dma mappings.
I don't know how the API should look like, maybe passing memfd, and dma-buf
supports mmap, but I think it's better to call the op something like
"register_buffer" instead and keep all it in lib/ for the same reasons.
> Config option: as this unconditionally when DMA_SHARED_BUFFER is enabled,
> why does it need a separate config option?
More clearly marking relevant code, easier to make optional if needed,
and gives some introspection via /proc/config.
> Interface: io_dmabuf_token_create / ->create_dmabuf_token filling
> in a structure allocated by the caller feels odd.
It's minimising pointer chasing. "token" is mainly used by io_uring in
the hot path, and io_uring just keeps it as a part of a larger struct.
For the same reasons "map" is allocated by the driver.
I can add an extra parameter to io_dmabuf_token_create() for how
many extra bytes to allocate for the caller's use, if that makes
things any better for you, but it was easier to just pass an
already allocated struct.
My gut feeling
> would be to move most of io_dmabuf_token_create into a helper called
> by ->create_dmabuf_token so that the token is allocated in the
> driver data structure and returned from create_dmabuf_token.
--
Pavel Begunkov
next prev parent reply other threads:[~2026-05-18 10:14 UTC|newest]
Thread overview: 57+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-04-29 15:25 [PATCH v3 00/10] Add dmabuf read/write via io_uring Pavel Begunkov
2026-04-29 15:25 ` [PATCH v3 01/10] file: add callback for creating long-term dmabuf maps Pavel Begunkov
2026-04-30 6:03 ` Christian König
2026-04-30 18:33 ` Pavel Begunkov
2026-05-04 7:14 ` Christian König
2026-05-13 8:11 ` Christoph Hellwig
2026-04-29 15:25 ` [PATCH v3 02/10] iov_iter: add iterator type for " Pavel Begunkov
2026-05-13 8:11 ` Christoph Hellwig
2026-05-13 10:05 ` David Laight
2026-05-13 13:29 ` David Laight
2026-05-18 9:24 ` Pavel Begunkov
2026-05-18 10:40 ` David Laight
2026-04-29 15:25 ` [PATCH v3 03/10] block: move bvec init into __bio_clone Pavel Begunkov
2026-05-13 8:12 ` Christoph Hellwig
2026-05-18 9:10 ` Pavel Begunkov
2026-04-29 15:25 ` [PATCH v3 04/10] block: introduce dma map backed bio type Pavel Begunkov
2026-05-13 8:19 ` Christoph Hellwig
2026-05-18 10:29 ` Pavel Begunkov
2026-05-18 12:22 ` Christian König
2026-05-18 12:40 ` Pavel Begunkov
2026-05-18 12:57 ` Christoph Hellwig
2026-05-18 13:59 ` Pavel Begunkov
2026-05-18 12:54 ` Christoph Hellwig
2026-05-19 9:21 ` David Laight
2026-05-20 8:30 ` Christoph Hellwig
2026-05-13 8:39 ` Christoph Hellwig
2026-05-18 9:11 ` Pavel Begunkov
2026-04-29 15:25 ` [PATCH v3 05/10] lib: add dmabuf token infrastructure Pavel Begunkov
2026-05-13 8:24 ` Christoph Hellwig
2026-05-18 10:14 ` Pavel Begunkov [this message]
2026-05-18 12:53 ` Christoph Hellwig
2026-05-18 14:23 ` Pavel Begunkov
2026-05-19 6:56 ` Christoph Hellwig
2026-05-19 7:55 ` Pavel Begunkov
2026-05-19 9:25 ` Christoph Hellwig
2026-05-18 11:24 ` Markus Elfring
2026-05-18 14:02 ` Markus Elfring
2026-04-29 15:25 ` [PATCH v3 06/10] block: forward create_dmabuf_token to drivers Pavel Begunkov
2026-05-13 8:25 ` Christoph Hellwig
2026-05-18 9:13 ` Pavel Begunkov
2026-04-29 15:25 ` [PATCH v3 07/10] nvme-pci: implement dma_token backed requests Pavel Begunkov
2026-04-29 15:29 ` Pavel Begunkov
2026-04-29 16:07 ` Maurizio Lombardi
2026-04-30 18:18 ` Pavel Begunkov
2026-05-13 8:38 ` Christoph Hellwig
2026-05-18 9:29 ` Pavel Begunkov
2026-05-18 10:18 ` Anuj Gupta/Anuj Gupta
2026-05-18 10:30 ` Pavel Begunkov
2026-04-29 15:25 ` [PATCH v3 08/10] io_uring/rsrc: introduce buf registration structure Pavel Begunkov
2026-04-29 15:25 ` [PATCH v3 09/10] io_uring/rsrc: extend buffer update Pavel Begunkov
2026-04-29 15:25 ` [PATCH v3 10/10] io_uring/rsrc: add dmabuf backed registered buffers Pavel Begunkov
2026-05-04 15:29 ` [PATCH v3 00/10] Add dmabuf read/write via io_uring Ming Lei
2026-05-06 9:02 ` Pavel Begunkov
2026-05-07 9:50 ` Ming Lei
2026-05-12 9:30 ` Pavel Begunkov
2026-05-12 7:00 ` Christoph Hellwig
2026-05-12 9:30 ` Pavel Begunkov
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=ebf41920-5852-428f-b98a-e0f44c8f3315@gmail.com \
--to=asml.silence@gmail.com \
--cc=akpm@linux-foundation.org \
--cc=anuj20.g@samsung.com \
--cc=axboe@kernel.dk \
--cc=brauner@kernel.org \
--cc=christian.koenig@amd.com \
--cc=dri-devel@lists.freedesktop.org \
--cc=hch@lst.de \
--cc=io-uring@vger.kernel.org \
--cc=jgg@nvidia.com \
--cc=joshi.k@samsung.com \
--cc=kbusch@kernel.org \
--cc=linaro-mm-sig@lists.linaro.org \
--cc=linux-block@vger.kernel.org \
--cc=linux-fsdevel@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-media@vger.kernel.org \
--cc=linux-nvme@lists.infradead.org \
--cc=nj.shetty@samsung.com \
--cc=phil.cayton@intel.com \
--cc=sagi@grimberg.me \
--cc=sumit.semwal@linaro.org \
--cc=tushar.gohad@intel.com \
--cc=viro@zeniv.linux.org.uk \
--cc=william.power@intel.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