On Thu, Feb 15, 2024 at 10:28 AM Lokesh Gidra <lokeshgidra@xxxxxxxxxx> wrote: > > vma_assert_locked() is needed to replace mmap_assert_locked() once we > start using per-vma locks in userfaultfd operations. > > In !CONFIG_PER_VMA_LOCK case when mm is locked, it implies that the > given VMA is locked. Yes, makes sense. With per-vma locks used in more places, this makes replacing mmap_assert_locked() with vma_assert_locked() very straight-forward. > > Signed-off-by: Lokesh Gidra <lokeshgidra@xxxxxxxxxx> Reviewed-by: Suren Baghdasaryan <surenb@xxxxxxxxxx> > --- > include/linux/mm.h | 5 +++++ > 1 file changed, 5 insertions(+) > > diff --git a/include/linux/mm.h b/include/linux/mm.h > index 3c85634b186c..5ece3ad34ef8 100644 > --- a/include/linux/mm.h > +++ b/include/linux/mm.h > @@ -781,6 +781,11 @@ static inline struct vm_area_struct *lock_vma_under_rcu(struct mm_struct *mm, > return NULL; > } > > +static inline void vma_assert_locked(struct vm_area_struct *vma) > +{ > + mmap_assert_locked(vma->vm_mm); > +} > + > static inline void release_fault_lock(struct vm_fault *vmf) > { > mmap_read_unlock(vmf->vma->vm_mm); > -- > 2.43.0.687.g38aa6559b0-goog >