Home
last modified time | relevance | path

Searched refs:rw_sem (Results 1 – 4 of 4) sorted by relevance

/Linux-v4.19/include/linux/
Dpercpu-rwsem.h15 struct rw_semaphore rw_sem; /* slowpath */ member
25 .rw_sem = __RWSEM_INITIALIZER(name.rw_sem), \
36 rwsem_acquire_read(&sem->rw_sem.dep_map, 0, 0, _RET_IP_); in percpu_down_read_preempt_disable()
81 rwsem_acquire_read(&sem->rw_sem.dep_map, 0, 1, _RET_IP_); in percpu_down_read_trylock()
102 rwsem_release(&sem->rw_sem.dep_map, 1, _RET_IP_); in percpu_up_read_preempt_enable()
125 #define percpu_rwsem_is_held(sem) lockdep_is_held(&(sem)->rw_sem)
128 lockdep_assert_held(&(sem)->rw_sem)
133 lock_release(&sem->rw_sem.dep_map, 1, ip); in percpu_rwsem_release()
136 sem->rw_sem.owner = RWSEM_OWNER_UNKNOWN; in percpu_rwsem_release()
143 lock_acquire(&sem->rw_sem.dep_map, 0, 1, read, 1, NULL, ip); in percpu_rwsem_acquire()
[all …]
Dfs.h1357 struct percpu_rw_semaphore rw_sem[SB_FREEZE_LEVELS]; member
1505 percpu_rwsem_acquire(&(sb)->s_writers.rw_sem[(lev)-1], 1, _THIS_IP_)
1507 percpu_rwsem_release(&(sb)->s_writers.rw_sem[(lev)-1], 1, _THIS_IP_)
/Linux-v4.19/kernel/locking/
Dpercpu-rwsem.c19 __init_rwsem(&sem->rw_sem, name, rwsem_key); in __percpu_init_rwsem()
85 __down_read(&sem->rw_sem); in __percpu_down_read()
87 __up_read(&sem->rw_sem); in __percpu_down_read()
145 down_write(&sem->rw_sem); in percpu_down_write()
183 up_write(&sem->rw_sem); in percpu_up_write()
/Linux-v4.19/fs/
Dsuper.c161 percpu_free_rwsem(&s->s_writers.rw_sem[i]); in destroy_super_work()
232 if (__percpu_init_rwsem(&s->s_writers.rw_sem[i], in alloc_super()
1353 percpu_up_read(sb->s_writers.rw_sem + level-1); in __sb_end_write()
1380 if (percpu_rwsem_is_held(sb->s_writers.rw_sem + i)) { in __sb_start_write()
1387 percpu_down_read(sb->s_writers.rw_sem + level-1); in __sb_start_write()
1389 ret = percpu_down_read_trylock(sb->s_writers.rw_sem + level-1); in __sb_start_write()
1406 percpu_down_write(sb->s_writers.rw_sem + level-1); in sb_wait_write()
1418 percpu_rwsem_release(sb->s_writers.rw_sem + level, 0, _THIS_IP_); in lockdep_sb_freeze_release()
1429 percpu_rwsem_acquire(sb->s_writers.rw_sem + level, 0, _THIS_IP_); in lockdep_sb_freeze_acquire()
1437 percpu_up_write(sb->s_writers.rw_sem + level); in sb_freeze_unlock()