Re: [Linaro-mm-sig] [PATCH v3 1/2] habanalabs: define uAPI to export FD for DMA-BUF

From: Oded Gabbay
Date: Tue Jun 22 2021 - 11:31:43 EST


On Tue, Jun 22, 2021 at 6:28 PM Jason Gunthorpe <jgg@xxxxxxxx> wrote:
>
> On Tue, Jun 22, 2021 at 05:24:08PM +0200, Christian König wrote:
>
> > > > I will take two GAUDI devices and use one as an exporter and one as an
> > > > importer. I want to see that the solution works end-to-end, with real
> > > > device DMA from importer to exporter.
> > > I can tell you it doesn't. Stuffing physical addresses directly into
> > > the sg list doesn't involve any of the IOMMU code so any configuration
> > > that requires IOMMU page table setup will not work.
> >
> > Sure it does. See amdgpu_vram_mgr_alloc_sgt:
> >
> > amdgpu_res_first(res, offset, length, &cursor);
> ^^^^^^^^^^
>
> I'm not talking about the AMD driver, I'm talking about this patch.
>
> + bar_address = hdev->dram_pci_bar_start +
> + (pages[cur_page] - prop->dram_base_address);
> + sg_dma_address(sg) = bar_address;
>
> Jason
Yes, you are correct of course, but what will happen Jason, If I will
add a call to dma_map_resource() like Christian said ?
Won't that solve that specific issue ?
That's why I want to try it...

Oded