Merge branch 'hmm-devmem-cleanup.4' into rdma.git hmm
Christoph Hellwig says:
====================
Below is a series that cleans up the dev_pagemap interface so that it is
more easily usable, which removes the need to wrap it in hmm and thus
allowing to kill a lot of code
Changes since v3:
- pull in "mm/swap: Fix release_pages() when releasing devmap pages" and
rebase the other patches on top of that
- fold the hmm_devmem_add_resource into the DEVICE_PUBLIC memory removal
patch
- remove _vm_normal_page as it isn't needed without DEVICE_PUBLIC memory
- pick up various ACKs
Changes since v2:
- fix nvdimm kunit build
- add a new memory type for device dax
- fix a few issues in intermediate patches that didn't show up in the end
result
- incorporate feedback from Michal Hocko, including killing of
the DEVICE_PUBLIC memory type entirely
Changes since v1:
- rebase
- also switch p2pdma to the internal refcount
- add type checking for pgmap->type
- rename the migrate method to migrate_to_ram
- cleanup the altmap_valid flag
- various tidbits from the reviews
====================
Conflicts resolved by:
- Keeping Ira's version of the code in swap.c
- Using the delete for the section in hmm.rst
- Using the delete for the devmap code in hmm.c and .h
* branch 'hmm-devmem-cleanup.4': (24 commits)
mm: don't select MIGRATE_VMA_HELPER from HMM_MIRROR
mm: remove the HMM config option
mm: sort out the DEVICE_PRIVATE Kconfig mess
mm: simplify ZONE_DEVICE page private data
mm: remove hmm_devmem_add
mm: remove hmm_vma_alloc_locked_page
nouveau: use devm_memremap_pages directly
nouveau: use alloc_page_vma directly
PCI/P2PDMA: use the dev_pagemap internal refcount
device-dax: use the dev_pagemap internal refcount
memremap: provide an optional internal refcount in struct dev_pagemap
memremap: replace the altmap_valid field with a PGMAP_ALTMAP_VALID flag
memremap: remove the data field in struct dev_pagemap
memremap: add a migrate_to_ram method to struct dev_pagemap_ops
memremap: lift the devmap_enable manipulation into devm_memremap_pages
memremap: pass a struct dev_pagemap to ->kill and ->cleanup
memremap: move dev_pagemap callbacks into a separate structure
memremap: validate the pagemap type passed to devm_memremap_pages
mm: factor out a devm_request_free_mem_region helper
mm: export alloc_pages_vma
...
Signed-off-by:
Jason Gunthorpe <jgg@mellanox.com>
No related branches found
No related tags found
Showing
- Documentation/vm/hmm.rst 0 additions, 27 deletionsDocumentation/vm/hmm.rst
- arch/powerpc/mm/mem.c 1 addition, 9 deletionsarch/powerpc/mm/mem.c
- arch/x86/mm/init_64.c 2 additions, 6 deletionsarch/x86/mm/init_64.c
- drivers/dax/dax-private.h 0 additions, 4 deletionsdrivers/dax/dax-private.h
- drivers/dax/device.c 1 addition, 40 deletionsdrivers/dax/device.c
- drivers/dax/pmem/core.c 1 addition, 1 deletiondrivers/dax/pmem/core.c
- drivers/gpu/drm/nouveau/Kconfig 3 additions, 3 deletionsdrivers/gpu/drm/nouveau/Kconfig
- drivers/gpu/drm/nouveau/nouveau_dmem.c 47 additions, 56 deletionsdrivers/gpu/drm/nouveau/nouveau_dmem.c
- drivers/nvdimm/pfn_devs.c 1 addition, 2 deletionsdrivers/nvdimm/pfn_devs.c
- drivers/nvdimm/pmem.c 19 additions, 32 deletionsdrivers/nvdimm/pmem.c
- drivers/pci/p2pdma.c 4 additions, 48 deletionsdrivers/pci/p2pdma.c
- fs/proc/task_mmu.c 1 addition, 1 deletionfs/proc/task_mmu.c
- include/linux/hmm.h 1 addition, 197 deletionsinclude/linux/hmm.h
- include/linux/ioport.h 2 additions, 1 deletioninclude/linux/ioport.h
- include/linux/memremap.h 49 additions, 26 deletionsinclude/linux/memremap.h
- include/linux/mm.h 2 additions, 26 deletionsinclude/linux/mm.h
- include/linux/mm_types.h 2 additions, 2 deletionsinclude/linux/mm_types.h
- include/linux/swapops.h 0 additions, 15 deletionsinclude/linux/swapops.h
- kernel/memremap.c 118 additions, 76 deletionskernel/memremap.c
- kernel/resource.c 39 additions, 0 deletionskernel/resource.c
Loading
Please register or sign in to comment