On Thu, Dec 04, 2025 at 02:10:25PM +0100, Christoph Hellwig wrote: > On Thu, Dec 04, 2025 at 12:09:46PM +0100, Christian König wrote: > > > I find the naming pretty confusing a well. But what this does is to > > > tell the file system/driver that it should expect a future > > > read_iter/write_iter operation that takes data from / puts data into > > > the dmabuf passed to this operation. > > > > That explanation makes much more sense. > > > > The remaining question is why does the underlying file system / driver > > needs to know that it will get addresses from a DMA-buf? > > This eventually ends up calling dma_buf_dynamic_attach and provides > a way to find the dma_buf_attachment later in the I/O path.
Maybe it can be named as ->dma_buf_attach()? For wiring dma-buf and the importer side(nvme). But I am wondering why not make it as one subsystem interface, such as nvme ioctl, then the whole implementation can be simplified a lot. It is reasonable because subsystem is exactly the side for consuming/importing the dma-buf. Thanks, Ming
