]> www.infradead.org Git - users/jedix/linux-maple.git/commitdiff
mm/userfaultfd: Introduce uffd_info_inc() for incrementing on loops
authorLiam R. Howlett <Liam.Howlett@oracle.com>
Wed, 29 Oct 2025 07:17:57 +0000 (03:17 -0400)
committerLiam R. Howlett <Liam.Howlett@oracle.com>
Thu, 30 Oct 2025 16:53:16 +0000 (12:53 -0400)
Clean up the mfill_atomic() loop iteration by moving most of the
incrementing to its own function.

Signed-off-by: Liam R. Howlett <Liam.Howlett@oracle.com>
mm/userfaultfd.c

index 1e6e7a670bf2040bf3c785cc1b306763297edaf4..1ec0a862bbb39fb8464d0bb5918f1fadde71085e 100644 (file)
@@ -595,6 +595,13 @@ static inline void uffd_ctx_unlock(struct uffd_info *info)
        uffd_mfill_unlock(info->dst_vma);
 }
 
+static inline unsigned long uffd_info_inc(struct uffd_info *info)
+{
+       info->dst_addr += info->increment;
+       info->src_addr += info->increment;
+       return info->increment;
+}
+
 ssize_t
 uffd_get_dst_pmd(struct vm_area_struct *dst_vma, unsigned long dst_addr,
                 pmd_t **dst_pmd)
@@ -738,9 +745,7 @@ retry:
                }
 
                if (!err) {
-                       info.dst_addr += info.increment;
-                       info.src_addr += info.increment;
-                       copied += info.increment;
+                       copied += uffd_info_inc(&info);
                        if (fatal_signal_pending(current))
                                err = -EINTR;
                }