On Thu, Mar 26, 2020 at 12:02:29AM -0700, Michel Lespinasse wrote: > +static inline bool mmap_is_locked(struct mm_struct *mm) > +{ > + return rwsem_is_locked(&mm->mmap_sem) != 0; > +} I've been wondering if the various VM_BUG(rwsem_is_locked()) would be better as lockdep expressions? Certainly when lockdep is enabled it should be preferred, IMHO. So, I think if inlines are to be introduced this should be something similar to netdev's ASSERT_RTNL which seems to have worked well. Maybe ASSERT_MMAP_SEM_READ/WRITE/HELD() and do the VM_BUG or lockdep_is_held as appropriate? Jason