The patch titled Subject: mm/hmm: kconfig split HMM address space mirroring from device memory has been added to the -mm tree. Its filename is mm-hmm-kconfig-split-hmm-address-space-mirroring-from-device-memory.patch This patch should soon appear at http://ozlabs.org/~akpm/mmots/broken-out/mm-hmm-kconfig-split-hmm-address-space-mirroring-from-device-memory.patch and later at http://ozlabs.org/~akpm/mmotm/broken-out/mm-hmm-kconfig-split-hmm-address-space-mirroring-from-device-memory.patch Before you just go and hit "reply", please: a) Consider who else should be cc'ed b) Prefer to cc a suitable mailing list as well c) Ideally: find the original patch on the mailing list and do a reply-to-all to that, adding suitable additional cc's *** Remember to use Documentation/process/submit-checklist.rst when testing your code *** The -mm tree is included into linux-next and is updated there every 3-4 working days ------------------------------------------------------ From: Jérôme Glisse <jglisse@xxxxxxxxxx> Subject: mm/hmm: kconfig split HMM address space mirroring from device memory To allow building device driver that only care about address space mirroring (like RDMA ODP) on platform that do not have all the pre- requisite for HMM device memory (like ZONE_DEVICE on ARM) split the HMM_MIRROR option dependency from the HMM_DEVICE dependency. Link: http://lkml.kernel.org/r/20190411180326.18958-1-jglisse@xxxxxxxxxx Signed-off-by: Jérôme Glisse <jglisse@xxxxxxxxxx> Tested-by: Leon Romanovsky <leonro@xxxxxxxxxxxx> Cc: Jason Gunthorpe <jgg@xxxxxxxxxxxx> Cc: Ralph Campbell <rcampbell@xxxxxxxxxx> Cc: John Hubbard <jhubbard@xxxxxxxxxx> Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> --- mm/Kconfig | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) --- a/mm/Kconfig~mm-hmm-kconfig-split-hmm-address-space-mirroring-from-device-memory +++ a/mm/Kconfig @@ -673,12 +673,13 @@ config ZONE_DEVICE config ARCH_HAS_HMM bool default y - depends on (X86_64 || PPC64) - depends on ZONE_DEVICE depends on MMU && 64BIT - depends on MEMORY_HOTPLUG - depends on MEMORY_HOTREMOVE - depends on SPARSEMEM_VMEMMAP + +config ARCH_HAS_HMM_DEVICE + bool + default y + depends on (X86_64 || PPC64) + depends on ARCH_HAS_ZONE_DEVICE config MIGRATE_VMA_HELPER bool @@ -704,7 +705,8 @@ config HMM_MIRROR config DEVICE_PRIVATE bool "Unaddressable device memory (GPU memory, ...)" - depends on ARCH_HAS_HMM + depends on ARCH_HAS_HMM_DEVICE + depends on ZONE_DEVICE select HMM select DEV_PAGEMAP_OPS @@ -715,7 +717,8 @@ config DEVICE_PRIVATE config DEVICE_PUBLIC bool "Addressable device memory (like GPU memory)" - depends on ARCH_HAS_HMM + depends on ARCH_HAS_HMM_DEVICE + depends on ZONE_DEVICE select HMM select DEV_PAGEMAP_OPS _ Patches currently in -mm which might be from jglisse@xxxxxxxxxx are mm-hmm-select-mmu-notifier-when-selecting-hmm-v2.patch mm-hmm-use-reference-counting-for-hmm-struct-v3.patch mm-hmm-do-not-erase-snapshot-when-a-range-is-invalidated.patch mm-hmm-improve-and-rename-hmm_vma_get_pfns-to-hmm_range_snapshot-v2.patch mm-hmm-improve-and-rename-hmm_vma_fault-to-hmm_range_fault-v3.patch mm-hmm-improve-driver-api-to-work-and-wait-over-a-range-v3.patch mm-hmm-add-default-fault-flags-to-avoid-the-need-to-pre-fill-pfns-arrays-v2.patch mm-hmm-mirror-hugetlbfs-snapshoting-faulting-and-dma-mapping-v3.patch mm-hmm-allow-to-mirror-vma-of-a-file-on-a-dax-backed-filesystem-v3.patch mm-hmm-add-helpers-to-test-if-mm-is-still-alive-or-not.patch mm-hmm-add-an-helper-function-that-fault-pages-and-map-them-to-a-device-v3.patch mm-hmm-add-an-helper-function-that-fault-pages-and-map-them-to-a-device-v3-fix.patch mm-hmm-convert-various-hmm_pfn_-to-device_entry-which-is-a-better-name.patch mm-mmu_notifier-helper-to-test-if-a-range-invalidation-is-blockable.patch mm-mmu_notifier-convert-user-range-blockable-to-helper-function.patch mm-mmu_notifier-convert-mmu_notifier_range-blockable-to-a-flags.patch mm-mmu_notifier-contextual-information-for-event-enums.patch mm-mmu_notifier-contextual-information-for-event-triggering-invalidation-v2.patch mm-mmu_notifier-use-correct-mmu_notifier-events-for-each-invalidation.patch mm-mmu_notifier-pass-down-vma-and-reasons-why-mmu-notifier-is-happening-v2.patch mm-mmu_notifier-mmu_notifier_range_update_to_read_only-helper.patch mm-hmm-kconfig-split-hmm-address-space-mirroring-from-device-memory.patch