]> www.infradead.org Git - users/jedix/linux-maple.git/commitdiff
userfaultfd-opportunistic-tlb-flush-batching-for-present-pages-in-move-v6
authorLokesh Gidra <lokeshgidra@google.com>
Sat, 16 Aug 2025 19:11:23 +0000 (12:11 -0700)
committerAndrew Morton <akpm@linux-foundation.org>
Fri, 12 Sep 2025 00:24:57 +0000 (17:24 -0700)
make calculation of largest extent that can be batched unconditional on
length, per Barry

Link: https://lkml.kernel.org/r/20250816191123.3601561-1-lokeshgidra@google.com
Signed-off-by: Lokesh Gidra <lokeshgidra@google.com>
Acked-by: Peter Xu <peterx@redhat.com>
Reviewed-by: Barry Song <baohua@kernel.org>
Cc: Suren Baghdasaryan <surenb@google.com>
Cc: Kalesh Singh <kaleshsingh@google.com>
Cc: Barry Song <v-songbaohua@oppo.com>
Cc: David Hildenbrand <david@redhat.com>
Cc: Peter Xu <peterx@redhat.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
mm/userfaultfd.c

index 4624ec9cd1269882c7d559bb9767346950eb7358..50aaa8dcd24c69865e747160fd2d9848e395f599 100644 (file)
@@ -1081,11 +1081,8 @@ static long move_present_ptes(struct mm_struct *mm,
        unsigned long src_start = src_addr;
        unsigned long src_end;
 
-       if (len > PAGE_SIZE) {
-               len = pmd_addr_end(dst_addr, dst_addr + len) - dst_addr;
-               src_end = pmd_addr_end(src_addr, src_addr + len);
-       } else
-               src_end = src_addr + len;
+       len = pmd_addr_end(dst_addr, dst_addr + len) - dst_addr;
+       src_end = pmd_addr_end(src_addr, src_addr + len);
        flush_cache_range(src_vma, src_addr, src_end);
        double_pt_lock(dst_ptl, src_ptl);