Lines Matching refs:mm
9 static inline void mmap_init_lock(struct mm_struct *mm) in mmap_init_lock() argument
11 init_rwsem(&mm->mmap_lock); in mmap_init_lock()
14 static inline void mmap_write_lock(struct mm_struct *mm) in mmap_write_lock() argument
16 down_write(&mm->mmap_lock); in mmap_write_lock()
19 static inline void mmap_write_lock_nested(struct mm_struct *mm, int subclass) in mmap_write_lock_nested() argument
21 down_write_nested(&mm->mmap_lock, subclass); in mmap_write_lock_nested()
24 static inline int mmap_write_lock_killable(struct mm_struct *mm) in mmap_write_lock_killable() argument
26 return down_write_killable(&mm->mmap_lock); in mmap_write_lock_killable()
29 static inline bool mmap_write_trylock(struct mm_struct *mm) in mmap_write_trylock() argument
31 return down_write_trylock(&mm->mmap_lock) != 0; in mmap_write_trylock()
34 static inline void mmap_write_unlock(struct mm_struct *mm) in mmap_write_unlock() argument
36 up_write(&mm->mmap_lock); in mmap_write_unlock()
39 static inline void mmap_write_downgrade(struct mm_struct *mm) in mmap_write_downgrade() argument
41 downgrade_write(&mm->mmap_lock); in mmap_write_downgrade()
44 static inline void mmap_read_lock(struct mm_struct *mm) in mmap_read_lock() argument
46 down_read(&mm->mmap_lock); in mmap_read_lock()
49 static inline int mmap_read_lock_killable(struct mm_struct *mm) in mmap_read_lock_killable() argument
51 return down_read_killable(&mm->mmap_lock); in mmap_read_lock_killable()
54 static inline bool mmap_read_trylock(struct mm_struct *mm) in mmap_read_trylock() argument
56 return down_read_trylock(&mm->mmap_lock) != 0; in mmap_read_trylock()
59 static inline void mmap_read_unlock(struct mm_struct *mm) in mmap_read_unlock() argument
61 up_read(&mm->mmap_lock); in mmap_read_unlock()
64 static inline bool mmap_read_trylock_non_owner(struct mm_struct *mm) in mmap_read_trylock_non_owner() argument
66 if (down_read_trylock(&mm->mmap_lock)) { in mmap_read_trylock_non_owner()
67 rwsem_release(&mm->mmap_lock.dep_map, _RET_IP_); in mmap_read_trylock_non_owner()
73 static inline void mmap_read_unlock_non_owner(struct mm_struct *mm) in mmap_read_unlock_non_owner() argument
75 up_read_non_owner(&mm->mmap_lock); in mmap_read_unlock_non_owner()
78 static inline void mmap_assert_locked(struct mm_struct *mm) in mmap_assert_locked() argument
80 lockdep_assert_held(&mm->mmap_lock); in mmap_assert_locked()
81 VM_BUG_ON_MM(!rwsem_is_locked(&mm->mmap_lock), mm); in mmap_assert_locked()
84 static inline void mmap_assert_write_locked(struct mm_struct *mm) in mmap_assert_write_locked() argument
86 lockdep_assert_held_write(&mm->mmap_lock); in mmap_assert_write_locked()
87 VM_BUG_ON_MM(!rwsem_is_locked(&mm->mmap_lock), mm); in mmap_assert_write_locked()
90 static inline int mmap_lock_is_contended(struct mm_struct *mm) in mmap_lock_is_contended() argument
92 return rwsem_is_contended(&mm->mmap_lock); in mmap_lock_is_contended()