On Tue, Nov 22, 2016 at 10:59 AM, Serguei Sagalovitch
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
memory/data to the new location so CPU pointer should point to the new
(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.