On Mon, Nov 25, 2019 at 08:32:58AM -0800, Niranjan Vishwanathapura wrote:
And putting the cpu PFN of a ZONE_DEVICE device page into sg_dma_address still looks very wrong to me
The below call in patch 7 does convert any cpu PFN to device address. So, it won't be CPU PFN. i915_dmem_convert_pfn(vm->i915, &range);
Well, then it should be done here in patch 6, surely?
Also, only reason to use sgl list is because i915 driver page table update functions takes an sgl, otherwise we can directly deal with range.pfns array.
Maybe that should be fixed instead of abusing sgl
Jason