Re: [PATCH v6 06/13] nvme-pci: implement dma-buf backed requests
From: Christoph Hellwig
Date: Wed Sep 23 2026 - 00:55:33 EST
On Tue, Sep 22, 2026 at 02:37:08PM +0100, Pavel Begunkov wrote:
>> Sashiko had a few comments, which I think are correct - if we use
>> dma_map_sg to map the data, we need to use the sync_sg APIs to
>> transfer ownership. That only matters on non-coherent architectures
>> with MMU, but we need to get it right.
>
> I've seen that and fixed everything locally that should be fixed,
> apart from the sync. I wonder what we can do about that? I can
> somehow replace it with the sg variant for now, but sync'ing the
> entire possibly multi-GB mapping for, let's say, a 512B I/O, sounds
> not wise.
If we'd want to fix this for real we'd need to add an offset to the
sync by sg methods. Or move away from scatterlists in dma-buf, given
that they are a horrible API. All of these are bigger projects,
though. So for now I think you'd want to do the sync all, and have
the people who run high-performance io_uring code on non-coherent
platforms suffer.
> And I can think of another place that does mix sync_single
> with sgs.
Which one?