Lines Matching refs:sem
63 static inline void __down_read(struct rw_semaphore *sem) in __down_read() argument
72 : "+m" (sem->count) in __down_read()
73 : "a" (sem) in __down_read()
80 static inline int __down_read_trylock(struct rw_semaphore *sem) in __down_read_trylock() argument
93 : "+m" (sem->count), "=&a" (result), "=&r" (tmp) in __down_read_trylock()
102 static inline void __down_write_nested(struct rw_semaphore *sem, int subclass) in __down_write_nested() argument
114 : "+m" (sem->count), "=d" (tmp) in __down_write_nested()
115 : "a" (sem), "1" (RWSEM_ACTIVE_WRITE_BIAS) in __down_write_nested()
119 static inline void __down_write(struct rw_semaphore *sem) in __down_write() argument
121 __down_write_nested(sem, 0); in __down_write()
127 static inline int __down_write_trylock(struct rw_semaphore *sem) in __down_write_trylock() argument
144 : "+m" (sem->count), "=&a" (result), "=&r" (tmp) in __down_write_trylock()
153 static inline void __up_read(struct rw_semaphore *sem) in __up_read() argument
163 : "+m" (sem->count), "=d" (tmp) in __up_read()
164 : "a" (sem), "1" (-RWSEM_ACTIVE_READ_BIAS) in __up_read()
171 static inline void __up_write(struct rw_semaphore *sem) in __up_write() argument
181 : "+m" (sem->count), "=d" (tmp) in __up_write()
182 : "a" (sem), "1" (-RWSEM_ACTIVE_WRITE_BIAS) in __up_write()
189 static inline void __downgrade_write(struct rw_semaphore *sem) in __downgrade_write() argument
201 : "+m" (sem->count) in __downgrade_write()
202 : "a" (sem), "er" (-RWSEM_WAITING_BIAS) in __downgrade_write()
209 static inline void rwsem_atomic_add(long delta, struct rw_semaphore *sem) in rwsem_atomic_add() argument
212 : "+m" (sem->count) in rwsem_atomic_add()
219 static inline long rwsem_atomic_update(long delta, struct rw_semaphore *sem) in rwsem_atomic_update() argument
221 return delta + xadd(&sem->count, delta); in rwsem_atomic_update()