Re: Enabling peer to peer device transactions for PCIe devices
From: Dan Williams <hidden>
Date: 2016-11-22 20:01:22
Also in:
dri-devel, linux-media, linux-pci, lkml, nvdimm
From: Dan Williams <hidden>
Date: 2016-11-22 20:01:22
Also in:
dri-devel, linux-media, linux-pci, lkml, nvdimm
On Tue, Nov 22, 2016 at 10:59 AM, Serguei Sagalovitch [off-list ref] wrote:
Dan, I personally like "device-DAX" idea but my concerns are: - How well it will co-exists with the DRM infrastructure / implementations in part dealing with CPU pointers?
Inside the kernel a device-DAX range is "just memory" in the sense that you can perform pfn_to_page() on it and issue I/O, but the vma is not migratable. To be honest I do not know how well that co-exists with drm infrastructure.
- How well we will be able to handle case when we need to "move"/"evict"
memory/data to the new location so CPU pointer should point to the new
physical location/address
(and may be not in PCI device memory at all)?So, device-DAX deliberately avoids support for in-kernel migration or overcommit. Those cases are left to the core mm or drm. The device-dax interface is for cases where all that is needed is a direct-mapping to a statically-allocated physical-address range be it persistent memory or some other special reserved memory range.