mbox series

[GIT,PULL] Please pull hmm changes

Message ID 20200804150606.GA809710@nvidia.com (mailing list archive)
State New, archived
Headers show
Series [GIT,PULL] Please pull hmm changes | expand

Pull-request

git://git.kernel.org/pub/scm/linux/kernel/git/rdma/rdma.git tags/for-linus-hmm

Message

Jason Gunthorpe Aug. 4, 2020, 3:06 p.m. UTC
Hi Linus,

Ralph has been working on nouveau's use of hmm_range_fault() and migrate_vma()
which resulted in this small series of improvements.

There are two expected conflicts. Conflict with the kvm-ppc tree:

https://lore.kernel.org/linux-next/20200730191610.204ed02c@canb.auug.org.au/

This is because the kvm-ppc tree moved __kvmppc_svm_page_out() within the
file. To resolve the diff from 5143192cd410 ("mm/migrate: add a flags
parameter to migrate_vma") needs to be applied to the new location:

-       mig.src_owner = &kvmppc_uvmem_pgmap;
++      mig.pgmap_owner = &kvmppc_uvmem_pgmap;
++      mig.flags = MIGRATE_VMA_SELECT_DEVICE_PRIVATE;

There is an accidental conflict with the DRM tree, due to a confusion the same
patch got applied to both trees and we couldn't undo it in time. Please take
the hmm version of the resolution.

Since neither DRM or kvm-ppc have been merged by you, I've made a very hacky
for-linus-hmm-merged tag with my resolutions for your reference.

Thanks,
Jason

The following changes since commit dcb7fd82c75ee2d6e6f9d8cc71c52519ed52e258:

  Linux 5.8-rc4 (2020-07-05 16:20:22 -0700)

are available in the Git repository at:

  git://git.kernel.org/pub/scm/linux/kernel/git/rdma/rdma.git tags/for-linus-hmm

for you to fetch changes up to 7d17e83abec1be3355260b3e4812044c65c32907:

  mm/hmm/test: use the new migration invalidation (2020-07-28 16:20:33 -0300)

----------------------------------------------------------------
hmm related patches for 5.9

This series adds reporting of the page table order from hmm_range_fault()
and some optimization of migrate_vma():

- Report the size of the page table mapping out of hmm_range_fault(). This
  makes it easier to establish a large/huge/etc mapping in the device's
  page table.

- Allow devices to ignore the invalidations during migration in cases
  where the migration is not going to change pages. For instance migrating
  pages to a device does not require the device to invalidate pages
  already in the device.

- Update nouveau and hmm_tests to use the above

----------------------------------------------------------------
Ralph Campbell (10):
      mm/hmm: provide the page mapping order in hmm_range_fault()
      mm/hmm: add tests for hmm_pfn_to_map_order()
      nouveau/hmm: fault one page at a time
      nouveau: fix mapping 2MB sysmem pages
      nouveau/hmm: support mapping large sysmem pages
      nouveau: fix storing invalid ptes
      mm/migrate: add a flags parameter to migrate_vma
      mm/notifier: add migration invalidation type
      nouveau/svm: use the new migration invalidation
      mm/hmm/test: use the new migration invalidation

 arch/powerpc/kvm/book3s_hv_uvmem.c                 |   4 +-
 drivers/gpu/drm/nouveau/nouveau_dmem.c             |  19 +-
 drivers/gpu/drm/nouveau/nouveau_svm.c              | 257 +++++++++------------
 drivers/gpu/drm/nouveau/nouveau_svm.h              |  13 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmm.c      |   5 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmgp100.c |  91 +++++++-
 include/linux/hmm.h                                |  24 +-
 include/linux/migrate.h                            |  16 +-
 include/linux/mmu_notifier.h                       |   6 +
 lib/test_hmm.c                                     |  47 ++--
 lib/test_hmm_uapi.h                                |   4 +
 mm/hmm.c                                           |  16 +-
 mm/migrate.c                                       |  14 +-
 tools/testing/selftests/vm/hmm-tests.c             |  94 +++++++-
 14 files changed, 410 insertions(+), 200 deletions(-)

Comments

pr-tracker-bot@kernel.org Aug. 5, 2020, 8:33 p.m. UTC | #1
The pull request you sent on Tue, 4 Aug 2020 12:06:06 -0300:

> git://git.kernel.org/pub/scm/linux/kernel/git/rdma/rdma.git tags/for-linus-hmm

has been merged into torvalds/linux.git:
https://git.kernel.org/torvalds/c/fffe3ae0ee84e25d2befe2ae59bc32aa2b6bc77b

Thank you!