On Thu, Oct 17, 2024 at 10:46:44AM -0300, Jason Gunthorpe wrote: > On Thu, Oct 17, 2024 at 06:12:55AM -0700, Christoph Hellwig wrote: > > On Thu, Oct 17, 2024 at 10:05:39AM -0300, Jason Gunthorpe wrote: > > > Broadly I think whatever flow NVMe uses for P2P will apply to ODP as > > > well. > > > > ODP is a lot simpler than NVMe for P2P actually :( > > What is your thinking there? I'm looking at the latest patches and I > would expect dma_iova_init() to accept a phys so it can call > pci_p2pdma_map_type() once for the whole transaction. It is a slow > operation. You can't do it for the whole transaction. Here is my suggestion for ODP: http://git.infradead.org/?p=users/hch/misc.git;a=shortlog;h=refs/heads/dma-split-wip For NVMe I need to figure out a way to split bios on a per P2P type boundary as we don't have any space to record if something is a bus mapped address.