On Jun 21, 2022, at 8:29 AM, Peter Xu <peterx@xxxxxxxxxx> wrote: > ⚠ External Email > > On Sun, Jun 19, 2022 at 04:34:45PM -0700, Nadav Amit wrote: >> @@ -683,30 +681,33 @@ static __always_inline ssize_t __mcopy_atomic(struct mm_struct *dst_mm, >> >> ssize_t mcopy_atomic(struct mm_struct *dst_mm, unsigned long dst_start, >> unsigned long src_start, unsigned long len, >> - atomic_t *mmap_changing, __u64 mode) >> + atomic_t *mmap_changing, uffd_flags_t uffd_flags) >> { >> return __mcopy_atomic(dst_mm, dst_start, src_start, len, >> - MCOPY_ATOMIC_NORMAL, mmap_changing, mode); >> + MCOPY_ATOMIC_NORMAL, mmap_changing, uffd_flags); >> } >> >> ssize_t mfill_zeropage(struct mm_struct *dst_mm, unsigned long start, >> - unsigned long len, atomic_t *mmap_changing) >> + unsigned long len, atomic_t *mmap_changing, >> + uffd_flags_t uffd_flags) > > Should this be fed into the last parameter of __mcopy_atomic() below? > >> { >> return __mcopy_atomic(dst_mm, start, 0, len, MCOPY_ATOMIC_ZEROPAGE, >> mmap_changing, 0); >> } >> >> ssize_t mcopy_continue(struct mm_struct *dst_mm, unsigned long start, >> - unsigned long len, atomic_t *mmap_changing) >> + unsigned long len, atomic_t *mmap_changing, >> + uffd_flags_t uffd_flags) > > Same question here.. Yes it should. I think I will add flags for CONTINUE/ZERO ACCESS/WRITE just for consistency, even if we eventually decide to disregard them.