Lines Matching refs:rw_semaphore
36 struct rw_semaphore { struct
73 static inline int rwsem_is_locked(struct rw_semaphore *sem) in rwsem_is_locked() argument
115 struct rw_semaphore name = __RWSEM_INITIALIZER(name)
117 extern void __init_rwsem(struct rw_semaphore *sem, const char *name,
133 static inline int rwsem_is_contended(struct rw_semaphore *sem) in rwsem_is_contended()
141 extern void down_read(struct rw_semaphore *sem);
142 extern int __must_check down_read_interruptible(struct rw_semaphore *sem);
143 extern int __must_check down_read_killable(struct rw_semaphore *sem);
148 extern int down_read_trylock(struct rw_semaphore *sem);
153 extern void down_write(struct rw_semaphore *sem);
154 extern int __must_check down_write_killable(struct rw_semaphore *sem);
159 extern int down_write_trylock(struct rw_semaphore *sem);
164 extern void up_read(struct rw_semaphore *sem);
169 extern void up_write(struct rw_semaphore *sem);
174 extern void downgrade_write(struct rw_semaphore *sem);
190 extern void down_read_nested(struct rw_semaphore *sem, int subclass);
191 extern int __must_check down_read_killable_nested(struct rw_semaphore *sem, int subclass);
192 extern void down_write_nested(struct rw_semaphore *sem, int subclass);
193 extern int down_write_killable_nested(struct rw_semaphore *sem, int subclass);
194 extern void _down_write_nest_lock(struct rw_semaphore *sem, struct lockdep_map *nest_lock);
208 extern void down_read_non_owner(struct rw_semaphore *sem);
209 extern void up_read_non_owner(struct rw_semaphore *sem);