On Wed, May 23, 2018 at 5:10 PM, Jerome Glisse jglisse@redhat.com wrote:
On Mon, May 21, 2018 at 03:35:14PM -0700, Dan Williams wrote:
Hi Andrew, please consider this series for 4.18.
For maintainability, as ZONE_DEVICE continues to attract new users, it is useful to keep all users consolidated on devm_memremap_pages() as the interface for create "device pages".
The devm_memremap_pages() implementation was recently reworked to make it more generic for arbitrary users, like the proposed peer-to-peer PCI-E enabling. HMM pre-dated this rework and opted to duplicate devm_memremap_pages() as hmm_devmem_pages_create().
Rework HMM to be a consumer of devm_memremap_pages() directly and fix up the licensing on the exports given the deep dependencies on the mm.
I am on PTO right now so i won't be able to quickly review it all but forcing GPL export is problematic for me now. I rather have device driver using "sane" common helpers than creating their own crazy thing.
Sane drivers that need this level of deep integration with Linux memory management need to be upstream. Otherwise, HMM is an unprecedented departure from the norms of Linux kernel development.