Home
last modified time | relevance | path

Searched refs:rwlock (Results 1 - 25 of 33) sorted by relevance

12

/kernel/liteos_a/kernel/base/ipc/
H A Dlos_rwlock.c43 BOOL LOS_RwlockIsValid(const LosRwlock *rwlock) in LOS_RwlockIsValid() argument
45 if ((rwlock != NULL) && ((rwlock->magic & RWLOCK_COUNT_MASK) == OS_RWLOCK_MAGIC)) { in LOS_RwlockIsValid()
52 UINT32 LOS_RwlockInit(LosRwlock *rwlock) in LOS_RwlockInit() argument
56 if (rwlock == NULL) { in LOS_RwlockInit()
61 if ((rwlock->magic & RWLOCK_COUNT_MASK) == OS_RWLOCK_MAGIC) { in LOS_RwlockInit()
66 rwlock->rwCount = 0; in LOS_RwlockInit()
67 rwlock->writeOwner = NULL; in LOS_RwlockInit()
68 LOS_ListInit(&(rwlock->readList)); in LOS_RwlockInit()
69 LOS_ListInit(&(rwlock in LOS_RwlockInit()
75 LOS_RwlockDestroy(LosRwlock *rwlock) LOS_RwlockDestroy() argument
99 OsRwlockCheck(const LosRwlock *rwlock) OsRwlockCheck() argument
130 OsRwlockRdPendOp(LosTaskCB *runTask, LosRwlock *rwlock, UINT32 timeout) OsRwlockRdPendOp() argument
174 OsRwlockWrPendOp(LosTaskCB *runTask, LosRwlock *rwlock, UINT32 timeout) OsRwlockWrPendOp() argument
215 OsRwlockRdUnsafe(LosRwlock *rwlock, UINT32 timeout) OsRwlockRdUnsafe() argument
224 OsRwlockTryRdUnsafe(LosRwlock *rwlock, UINT32 timeout) OsRwlockTryRdUnsafe() argument
253 OsRwlockWrUnsafe(LosRwlock *rwlock, UINT32 timeout) OsRwlockWrUnsafe() argument
262 OsRwlockTryWrUnsafe(LosRwlock *rwlock, UINT32 timeout) OsRwlockTryWrUnsafe() argument
282 LOS_RwlockRdLock(LosRwlock *rwlock, UINT32 timeout) LOS_RwlockRdLock() argument
297 LOS_RwlockTryRdLock(LosRwlock *rwlock) LOS_RwlockTryRdLock() argument
312 LOS_RwlockWrLock(LosRwlock *rwlock, UINT32 timeout) LOS_RwlockWrLock() argument
327 LOS_RwlockTryWrLock(LosRwlock *rwlock) LOS_RwlockTryWrLock() argument
363 OsRwlockPostOp(LosRwlock *rwlock, BOOL *needSched) OsRwlockPostOp() argument
409 OsRwlockUnlockUnsafe(LosRwlock *rwlock, BOOL *needSched) OsRwlockUnlockUnsafe() argument
441 LOS_RwlockUnLock(LosRwlock *rwlock) LOS_RwlockUnLock() argument
[all...]
/kernel/linux/linux-6.6/include/linux/
H A Drwlock_rt.h10 extern void __rt_rwlock_init(rwlock_t *rwlock, const char *name,
13 static inline void __rt_rwlock_init(rwlock_t *rwlock, char *name, in __rt_rwlock_init() 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) in read_lock() argument
40 read_lock_bh(rwlock_t *rwlock) read_lock_bh() argument
46 read_lock_irq(rwlock_t *rwlock) read_lock_irq() argument
60 read_unlock(rwlock_t *rwlock) read_unlock() argument
65 read_unlock_bh(rwlock_t *rwlock) read_unlock_bh() argument
71 read_unlock_irq(rwlock_t *rwlock) read_unlock_irq() argument
76 read_unlock_irqrestore(rwlock_t *rwlock, unsigned long flags) read_unlock_irqrestore() argument
82 write_lock(rwlock_t *rwlock) write_lock() argument
88 write_lock_nested(rwlock_t *rwlock, int subclass) write_lock_nested() argument
96 write_lock_bh(rwlock_t *rwlock) write_lock_bh() argument
102 write_lock_irq(rwlock_t *rwlock) write_lock_irq() argument
126 write_unlock(rwlock_t *rwlock) write_unlock() argument
131 write_unlock_bh(rwlock_t *rwlock) write_unlock_bh() argument
137 write_unlock_irq(rwlock_t *rwlock) write_unlock_irq() argument
142 write_unlock_irqrestore(rwlock_t *rwlock, unsigned long flags) write_unlock_irqrestore() argument
[all...]
H A Drwlock.h9 * 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 Dseqlock.h166 * LOCKNAME: raw_spinlock, spinlock, rwlock or mutex
184 #define seqcount_rwlock_init(s, lock) seqcount_LOCKNAME_init(s, lock, rwlock)
276 SEQCOUNT_LOCKNAME(rwlock, rwlock_t, __SEQ_RT, s->lock, read, read_lock(s->lock))
303 __seqprop_case((s), rwlock, prop), \
/kernel/linux/linux-5.10/tools/lib/lockdep/
H A Dpreload.c64 /* pthread rwlock API */
67 extern int __pthread_rwlock_init(pthread_rwlock_t *rwlock, const pthread_rwlockattr_t *attr);
68 extern int __pthread_rwlock_destroy(pthread_rwlock_t *rwlock);
69 extern int __pthread_rwlock_wrlock(pthread_rwlock_t *rwlock);
70 extern int __pthread_rwlock_trywrlock(pthread_rwlock_t *rwlock);
71 extern int __pthread_rwlock_rdlock(pthread_rwlock_t *rwlock);
72 extern int __pthread_rwlock_tryrdlock(pthread_rwlock_t *rwlock);
73 extern int __pthread_rwlock_unlock(pthread_rwlock_t *rwlock);
84 static int (*ll_pthread_rwlock_init)(pthread_rwlock_t *rwlock,
86 static int (*ll_pthread_rwlock_destroy)(pthread_rwlock_t *rwlock)
326 pthread_rwlock_init(pthread_rwlock_t *rwlock, const pthread_rwlockattr_t *attr) pthread_rwlock_init() argument
340 pthread_rwlock_destroy(pthread_rwlock_t *rwlock) pthread_rwlock_destroy() argument
349 pthread_rwlock_rdlock(pthread_rwlock_t *rwlock) pthread_rwlock_rdlock() argument
363 pthread_rwlock_tryrdlock(pthread_rwlock_t *rwlock) pthread_rwlock_tryrdlock() argument
377 pthread_rwlock_trywrlock(pthread_rwlock_t *rwlock) pthread_rwlock_trywrlock() argument
391 pthread_rwlock_wrlock(pthread_rwlock_t *rwlock) pthread_rwlock_wrlock() argument
405 pthread_rwlock_unlock(pthread_rwlock_t *rwlock) pthread_rwlock_unlock() argument
[all...]
/kernel/linux/linux-6.6/kernel/locking/
H A Dspinlock_rt.c192 * The common functions which get wrapped into the rwlock API.
194 int __sched rt_read_trylock(rwlock_t *rwlock) in rt_read_trylock() argument
198 ret = rwbase_read_trylock(&rwlock->rwbase); in rt_read_trylock()
200 rwlock_acquire_read(&rwlock->dep_map, 0, 1, _RET_IP_); in rt_read_trylock()
208 int __sched rt_write_trylock(rwlock_t *rwlock) in rt_write_trylock() argument
212 ret = rwbase_write_trylock(&rwlock->rwbase); in rt_write_trylock()
214 rwlock_acquire(&rwlock->dep_map, 0, 1, _RET_IP_); in rt_write_trylock()
222 void __sched rt_read_lock(rwlock_t *rwlock) in rt_read_lock() argument
225 rwlock_acquire_read(&rwlock->dep_map, 0, 0, _RET_IP_); in rt_read_lock()
226 rwbase_read_lock(&rwlock in rt_read_lock()
232 rt_write_lock(rwlock_t *rwlock) rt_write_lock() argument
243 rt_write_lock_nested(rwlock_t *rwlock, int subclass) rt_write_lock_nested() argument
254 rt_read_unlock(rwlock_t *rwlock) rt_read_unlock() argument
263 rt_write_unlock(rwlock_t *rwlock) rt_write_unlock() argument
273 __rt_rwlock_init(rwlock_t *rwlock, const char *name, struct lock_class_key *key) __rt_rwlock_init() argument
[all...]
H A Dspinlock.c9 * 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);
/kernel/liteos_a/kernel/include/
H A Dlos_rwlock.h54 INT32 rwCount : 8; /**< Times of locking the rwlock, rwCount > 0 when rwkick is read mode, rwCount < 0
55 when the rwlock is write mode, rwCount = 0 when the lock is free. */
56 VOID *writeOwner; /**< The current write thread that is locking the rwlock */
61 extern BOOL LOS_RwlockIsValid(const LosRwlock *rwlock);
65 * @brief Init a rwlock.
68 * This API is used to Init a rwlock. A rwlock handle is assigned to rwlockHandle when the rwlock is init successfully.
70 * @param rwlock [IN] Handle pointer of the successfully init rwlock
[all...]
/kernel/linux/linux-5.10/include/linux/
H A Drwlock.h9 * rwlock related methods
50 # define do_raw_read_lock(rwlock) do {__acquire(lock); arch_read_lock(&(rwlock)->raw_lock); } while (0)
53 # define do_raw_read_trylock(rwlock) arch_read_trylock(&(rwlock)->raw_lock)
54 # define do_raw_read_unlock(rwlock) do {arch_read_unlock(&(rwlock)->raw_lock); __release(lock); } while (0)
55 # define do_raw_write_lock(rwlock) do {__acquire(lock); arch_write_lock(&(rwlock)->raw_lock); } while (0)
58 # define do_raw_write_trylock(rwlock) arch_write_tryloc
[all...]
H A Dseqlock.h167 * LOCKNAME: raw_spinlock, spinlock, rwlock, mutex, or ww_mutex.
185 #define seqcount_rwlock_init(s, lock) seqcount_LOCKNAME_init(s, lock, rwlock);
278 SEQCOUNT_LOCKNAME(rwlock, rwlock_t, __SEQ_RT, s->lock, read, read_lock(s->lock))
306 __seqprop_case((s), rwlock, prop), \
/kernel/linux/linux-5.10/tools/lib/lockdep/include/liblockdep/
H A Drwlock.h9 pthread_rwlock_t rwlock; member
17 .rwlock = PTHREAD_RWLOCK_INITIALIZER, \
28 return pthread_rwlock_init(&lock->rwlock, attr); in __rwlock_init()
41 return pthread_rwlock_rdlock(&lock->rwlock); in liblockdep_pthread_rwlock_rdlock()
48 return pthread_rwlock_unlock(&lock->rwlock); in liblockdep_pthread_rwlock_unlock()
54 return pthread_rwlock_wrlock(&lock->rwlock); in liblockdep_pthread_rwlock_wrlock()
60 return pthread_rwlock_tryrdlock(&lock->rwlock) == 0 ? 1 : 0; in liblockdep_pthread_rwlock_tryrdlock()
66 return pthread_rwlock_trywrlock(&lock->rwlock) == 0 ? 1 : 0; in liblockdep_pthread_rwlock_trywrlock()
71 return pthread_rwlock_destroy(&lock->rwlock); in liblockdep_rwlock_destroy()
/kernel/liteos_a/kernel/base/include/
H A Dlos_rwlock_pri.h54 extern UINT32 OsRwlockRdUnsafe(LosRwlock *rwlock, UINT32 timeout);
55 extern UINT32 OsRwlockTryRdUnsafe(LosRwlock *rwlock, UINT32 timeout);
56 extern UINT32 OsRwlockWrUnsafe(LosRwlock *rwlock, UINT32 timeout);
57 extern UINT32 OsRwlockTryWrUnsafe(LosRwlock *rwlock, UINT32 timeout);
58 extern UINT32 OsRwlockUnlockUnsafe(LosRwlock *rwlock, BOOL *needSched);
/kernel/linux/linux-5.10/drivers/infiniband/core/
H A Dcache.c112 * 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
246 write_lock_irq(&table->rwlock); in free_gid_entry_locked()
257 write_unlock_irq(&table->rwlock); in free_gid_entry_locked()
331 write_lock_irq(&table->rwlock); in store_gid_entry()
333 write_unlock_irq(&table->rwlock); in store_gid_entry()
393 write_lock_irq(&table->rwlock); in del_gid()
401 write_unlock_irq(&table->rwlock); in del_gid()
[all...]
/kernel/linux/linux-6.6/drivers/infiniband/core/
H A Dcache.c112 * 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
246 write_lock_irq(&table->rwlock); in free_gid_entry_locked()
257 write_unlock_irq(&table->rwlock); in free_gid_entry_locked()
331 write_lock_irq(&table->rwlock); in store_gid_entry()
333 write_unlock_irq(&table->rwlock); in store_gid_entry()
393 write_lock_irq(&table->rwlock); in del_gid()
401 write_unlock_irq(&table->rwlock); in del_gid()
[all...]
/kernel/linux/linux-5.10/arch/arc/include/asm/
H A Dspinlock.h94 "1: llock %[val], [%[rwlock]] \n" in arch_read_lock()
97 " scond %[val], [%[rwlock]] \n" in arch_read_lock()
101 : [rwlock] "r" (&(rw->counter)), in arch_read_lock()
114 "1: llock %[val], [%[rwlock]] \n" in arch_read_trylock()
117 " scond %[val], [%[rwlock]] \n" in arch_read_trylock()
125 : [rwlock] "r" (&(rw->counter)), in arch_read_trylock()
151 "1: llock %[val], [%[rwlock]] \n" in arch_write_lock()
154 " scond %[val], [%[rwlock]] \n" in arch_write_lock()
158 : [rwlock] "r" (&(rw->counter)), in arch_write_lock()
172 "1: llock %[val], [%[rwlock]] \ in arch_write_trylock()
[all...]
/kernel/linux/linux-6.6/arch/arc/include/asm/
H A Dspinlock.h94 "1: llock %[val], [%[rwlock]] \n" in arch_read_lock()
97 " scond %[val], [%[rwlock]] \n" in arch_read_lock()
101 : [rwlock] "r" (&(rw->counter)), in arch_read_lock()
114 "1: llock %[val], [%[rwlock]] \n" in arch_read_trylock()
117 " scond %[val], [%[rwlock]] \n" in arch_read_trylock()
125 : [rwlock] "r" (&(rw->counter)), in arch_read_trylock()
151 "1: llock %[val], [%[rwlock]] \n" in arch_write_lock()
154 " scond %[val], [%[rwlock]] \n" in arch_write_lock()
158 : [rwlock] "r" (&(rw->counter)), in arch_write_lock()
172 "1: llock %[val], [%[rwlock]] \ in arch_write_trylock()
[all...]
/kernel/liteos_a/testsuites/kernel/sample/kernel_base/ipc/
H A DMakefile12 -I $(LITEOSTESTTOPDIR)/kernel/sample/kernel_base/ipc/rwlock
14 SRC_MODULES := sem event queue mux rwlock
17 SMP_MODULES := sem/smp event/smp queue/smp mux/smp rwlock/smp
29 SMOKE_MODULES := sem/smoke event/smoke queue/smoke mux/smoke rwlock/smoke
/kernel/linux/linux-5.10/tools/lib/lockdep/tests/
H A DWW.c2 #include <liblockdep/rwlock.h>
/kernel/linux/linux-5.10/kernel/locking/
H A Dspinlock.c9 * This file contains the spinlock/rwlock implementations for the
41 * rwlock : include/linux/rwlock_api_smp.h
127 BUILD_LOCK_OPS(read, rwlock);
128 BUILD_LOCK_OPS(write, rwlock);
/kernel/linux/linux-5.10/kernel/trace/
H A Dtrace_uprobe.c263 rwlock_init(&filter->rwlock); in init_trace_uprobe_filter()
1231 write_lock(&filter->rwlock); in trace_uprobe_filter_remove()
1241 write_unlock(&filter->rwlock); in trace_uprobe_filter_remove()
1252 write_lock(&filter->rwlock); in trace_uprobe_filter_add()
1270 write_unlock(&filter->rwlock); in trace_uprobe_filter_add()
1337 read_lock(&filter->rwlock); in uprobe_perf_filter()
1339 read_unlock(&filter->rwlock); in uprobe_perf_filter()
/kernel/linux/linux-6.6/kernel/trace/
H A Dtrace_uprobe.c254 rwlock_init(&filter->rwlock); in init_trace_uprobe_filter()
1225 write_lock(&filter->rwlock); in trace_uprobe_filter_remove()
1235 write_unlock(&filter->rwlock); in trace_uprobe_filter_remove()
1246 write_lock(&filter->rwlock); in trace_uprobe_filter_add()
1264 write_unlock(&filter->rwlock); in trace_uprobe_filter_add()
1329 read_lock(&filter->rwlock); in uprobe_perf_filter()
1331 read_unlock(&filter->rwlock); in uprobe_perf_filter()
/kernel/liteos_a/testsuites/unittest/process/lock/spinlock/smoke/
H A Dpthread_spinlock_test_001.cpp133 pthread_rwlockattr_t rwlock; in Testcase() local
/kernel/liteos_a/testsuites/unittest/process/lock/rwlock/full/
H A Dpthread_rwlock_test_002.cpp226 pthread_rwlockattr_t rwlock; in PthreadRwlockTest() local
/kernel/liteos_a/testsuites/unittest/process/lock/rwlock/smoke/
H A Dpthread_rwlock_test_001.cpp226 pthread_rwlockattr_t rwlock; in Testcase() local
/kernel/linux/linux-5.10/drivers/accesstokenid/
H A Daccess_tokenid.c15 #include <linux/rwlock.h>

Completed in 18 milliseconds

12