On Sat, Oct 24, 2020 at 08:48:07AM +0100, Christoph Hellwig wrote:
On Fri, Oct 23, 2020 at 03:20:05PM -0300, Jason Gunthorpe wrote:
The problem is we have RDMA drivers that assume SGL's have a valid struct page, and these hacky/wrong P2P sgls that DMABUF creates cannot be passed into those drivers.
RDMA drivers do not assume scatterlist have a valid struct page, scatterlists are defined to have a valid struct page. Any scatterlist without a struct page is completely buggy.
It is not just having the struct page, it needs to be a CPU accessible one for memcpy/etc. They aren't correct with the MEMORY_DEVICE_PCI_P2PDMA SGLs either.
Jason
dri-devel@lists.freedesktop.org