/linux-master/include/linux/ |
H A D | rwlock_rt.h | 10 extern void __rt_rwlock_init(rwlock_t *rwlock, const char *name, 13 static inline void __rt_rwlock_init(rwlock_t *rwlock, char *name, argument 27 extern void rt_read_lock(rwlock_t *rwlock); 28 extern int rt_read_trylock(rwlock_t *rwlock); 29 extern void rt_read_unlock(rwlock_t *rwlock); 30 extern void rt_write_lock(rwlock_t *rwlock); 31 extern void rt_write_lock_nested(rwlock_t *rwlock, int subclass); 32 extern int rt_write_trylock(rwlock_t *rwlock); 33 extern void rt_write_unlock(rwlock_t *rwlock); 35 static __always_inline void read_lock(rwlock_t *rwlock) argument 40 read_lock_bh(rwlock_t *rwlock) argument 46 read_lock_irq(rwlock_t *rwlock) argument 60 read_unlock(rwlock_t *rwlock) argument 65 read_unlock_bh(rwlock_t *rwlock) argument 71 read_unlock_irq(rwlock_t *rwlock) argument 76 read_unlock_irqrestore(rwlock_t *rwlock, unsigned long flags) argument 82 write_lock(rwlock_t *rwlock) argument 88 write_lock_nested(rwlock_t *rwlock, int subclass) argument 96 write_lock_bh(rwlock_t *rwlock) argument 102 write_lock_irq(rwlock_t *rwlock) argument 126 write_unlock(rwlock_t *rwlock) argument 131 write_unlock_bh(rwlock_t *rwlock) argument 137 write_unlock_irq(rwlock_t *rwlock) argument 142 write_unlock_irqrestore(rwlock_t *rwlock, unsigned long flags) argument [all...] |
H A D | rwlock.h | 9 * rwlock related methods 39 # define do_raw_read_lock(rwlock) do {__acquire(lock); arch_read_lock(&(rwlock)->raw_lock); } while (0) 40 # define do_raw_read_trylock(rwlock) arch_read_trylock(&(rwlock)->raw_lock) 41 # define do_raw_read_unlock(rwlock) do {arch_read_unlock(&(rwlock)->raw_lock); __release(lock); } while (0) 42 # define do_raw_write_lock(rwlock) do {__acquire(lock); arch_write_lock(&(rwlock)->raw_lock); } while (0) 43 # define do_raw_write_trylock(rwlock) arch_write_tryloc [all...] |
H A D | seqlock_types.h | 70 SEQCOUNT_LOCKNAME(rwlock, rwlock_t, __SEQ_RT, read)
|
H A D | seqlock.h | 114 * LOCKNAME: raw_spinlock, spinlock, rwlock or mutex 132 #define seqcount_rwlock_init(s, lock) seqcount_LOCKNAME_init(s, lock, rwlock) 228 SEQCOUNT_LOCKNAME(rwlock, rwlock_t, __SEQ_RT, read) 256 __seqprop_case((s), rwlock, prop), \
|
H A D | spinlock.h | 7 * include/linux/spinlock.h - generic spinlock/rwlock declarations 9 * here's the role of the various spinlock/rwlock related include files: 304 /* Include rwlock functions for !RT */ 305 #include <linux/rwlock.h> 473 * Check if a rwlock is contended. 474 * Returns non-zero if there is another task waiting on the rwlock. 476 * rwlock implementation does not support contention detection.
|
/linux-master/kernel/locking/ |
H A D | spinlock_rt.c | 198 * The common functions which get wrapped into the rwlock API. 200 int __sched rt_read_trylock(rwlock_t *rwlock) argument 204 ret = rwbase_read_trylock(&rwlock->rwbase); 206 rwlock_acquire_read(&rwlock->dep_map, 0, 1, _RET_IP_); 214 int __sched rt_write_trylock(rwlock_t *rwlock) argument 218 ret = rwbase_write_trylock(&rwlock->rwbase); 220 rwlock_acquire(&rwlock->dep_map, 0, 1, _RET_IP_); 228 void __sched rt_read_lock(rwlock_t *rwlock) argument 231 rwlock_acquire_read(&rwlock->dep_map, 0, 0, _RET_IP_); 232 rwbase_read_lock(&rwlock 238 rt_write_lock(rwlock_t *rwlock) argument 249 rt_write_lock_nested(rwlock_t *rwlock, int subclass) argument 260 rt_read_unlock(rwlock_t *rwlock) argument 269 rt_write_unlock(rwlock_t *rwlock) argument 279 __rt_rwlock_init(rwlock_t *rwlock, const char *name, struct lock_class_key *key) argument [all...] |
H A D | spinlock.c | 9 * This file contains the spinlock/rwlock implementations for the 41 * rwlock : include/linux/rwlock_api_smp.h 129 BUILD_LOCK_OPS(read, rwlock); 130 BUILD_LOCK_OPS(write, rwlock);
|
/linux-master/arch/arc/include/asm/ |
H A D | spinlock.h | 94 "1: llock %[val], [%[rwlock]] \n" 97 " scond %[val], [%[rwlock]] \n" 101 : [rwlock] "r" (&(rw->counter)), 114 "1: llock %[val], [%[rwlock]] \n" 117 " scond %[val], [%[rwlock]] \n" 125 : [rwlock] "r" (&(rw->counter)), 151 "1: llock %[val], [%[rwlock]] \n" 154 " scond %[val], [%[rwlock]] \n" 158 : [rwlock] "r" (&(rw->counter)), 172 "1: llock %[val], [%[rwlock]] \ [all...] |
/linux-master/drivers/infiniband/core/ |
H A D | cache.c | 112 * rwlock. Readers must hold only rwlock. All writers must be in a 116 /* rwlock protects data_vec[ix]->state and entry pointer. 118 rwlock_t rwlock; member in struct:ib_gid_table 246 write_lock_irq(&table->rwlock); 257 write_unlock_irq(&table->rwlock); 331 write_lock_irq(&table->rwlock); 333 write_unlock_irq(&table->rwlock); 393 write_lock_irq(&table->rwlock); 401 write_unlock_irq(&table->rwlock); [all...] |
/linux-master/kernel/trace/ |
H A D | trace_uprobe.c | 254 rwlock_init(&filter->rwlock); 1225 write_lock(&filter->rwlock); 1235 write_unlock(&filter->rwlock); 1246 write_lock(&filter->rwlock); 1264 write_unlock(&filter->rwlock); 1329 read_lock(&filter->rwlock); 1331 read_unlock(&filter->rwlock);
|
H A D | trace_probe.h | 243 rwlock_t rwlock; member in struct:trace_uprobe_filter
|
/linux-master/lib/ |
H A D | locking-selftest.c | 156 init_class_##class(spinlock_t *lock, rwlock_t *rwlock, \ 160 rwlock_init(rwlock); \
|