From: Jason Gunthorpe <j...@mellanox.com>

I've had these in my work queue for a bit, nothing profound here, just some
small edits for clarity.

Ralph's hmm tester will need a small diff to work after this - which
illustrates how setting default_flags == 0 is the same as what was called
SNAPSHOT:

diff --git a/lib/test_hmm.c b/lib/test_hmm.c
index 6ca953926dc13f..5f31f5b3e64cb9 100644
--- a/lib/test_hmm.c
+++ b/lib/test_hmm.c
@@ -300,7 +300,7 @@ static int dmirror_range_fault(struct dmirror *dmirror,
 
                range->notifier_seq = mmu_interval_read_begin(range->notifier);
                down_read(&mm->mmap_sem);
-               count = hmm_range_fault(range, 0);
+               count = hmm_range_fault(range);
                up_read(&mm->mmap_sem);
                if (count <= 0) {
                        if (count == 0 || count == -EBUSY)
@@ -337,8 +337,7 @@ static int dmirror_fault(struct dmirror *dmirror, unsigned 
long start,
                .flags = dmirror_hmm_flags,
                .values = dmirror_hmm_values,
                .pfn_shift = DPT_SHIFT,
-               .pfn_flags_mask = ~(dmirror_hmm_flags[HMM_PFN_VALID] |
-                                   dmirror_hmm_flags[HMM_PFN_WRITE]),
+               .pfn_flags_mask = 0,
                .default_flags = dmirror_hmm_flags[HMM_PFN_VALID] |
                                (write ? dmirror_hmm_flags[HMM_PFN_WRITE] : 0),
                .dev_private_owner = dmirror->mdevice,
@@ -872,7 +871,7 @@ static int dmirror_range_snapshot(struct dmirror *dmirror,
                range->notifier_seq = mmu_interval_read_begin(range->notifier);
 
                down_read(&mm->mmap_sem);
-               count = hmm_range_fault(range, HMM_FAULT_SNAPSHOT);
+               count = hmm_range_fault(range);
                up_read(&mm->mmap_sem);
                if (count <= 0) {
                        if (count == 0 || count == -EBUSY)
@@ -916,7 +915,7 @@ static int dmirror_snapshot(struct dmirror *dmirror,
                .flags = dmirror_hmm_flags,
                .values = dmirror_hmm_values,
                .pfn_shift = DPT_SHIFT,
-               .pfn_flags_mask = ~0ULL,
+               .pfn_flags_mask = 0,
                .dev_private_owner = dmirror->mdevice,
        };
        int ret = 0;

Jason Gunthorpe (6):
  mm/hmm: remove pgmap checking for devmap pages
  mm/hmm: return the fault type from hmm_pte_need_fault()
  mm/hmm: remove unused code and tidy comments
  mm/hmm: remove HMM_FAULT_SNAPSHOT
  mm/hmm: remove the CONFIG_TRANSPARENT_HUGEPAGE #ifdef
  mm/hmm: use device_private_entry_to_pfn()

 Documentation/vm/hmm.rst                |  12 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c |   2 +-
 drivers/gpu/drm/nouveau/nouveau_svm.c   |   2 +-
 include/linux/hmm.h                     |  55 +-----
 mm/hmm.c                                | 238 +++++++++---------------
 5 files changed, 98 insertions(+), 211 deletions(-)

-- 
2.25.1

_______________________________________________
amd-gfx mailing list
amd-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/amd-gfx

Reply via email to