Home
last modified time | relevance | path

Searched refs:sem (Results 1 – 25 of 138) sorted by relevance

123456

/linux/kernel/locking/
A Drwsem.c315 debug_check_no_locks_freed((void *)sem, sizeof(*sem)); in __init_rwsem()
319 sem->magic = sem; in __init_rwsem()
1091 return sem; in rwsem_down_read_slowpath()
1186 return sem; in rwsem_down_write_slowpath()
1214 return sem; in rwsem_wake()
1235 return sem; in rwsem_downgrade_wake()
1279 DEBUG_RWSEMS_WARN_ON(sem->magic != sem, sem); in __down_read_trylock()
1326 DEBUG_RWSEMS_WARN_ON(sem->magic != sem, sem); in __down_write_trylock()
1340 DEBUG_RWSEMS_WARN_ON(sem->magic != sem, sem); in __up_read()
1362 DEBUG_RWSEMS_WARN_ON(sem->magic != sem, sem); in __up_write()
[all …]
A Dpercpu-rwsem.c18 if (unlikely(!sem->read_count)) in __percpu_init_rwsem()
21 rcu_sync_init(&sem->rss); in __percpu_init_rwsem()
22 rcuwait_init(&sem->writer); in __percpu_init_rwsem()
24 atomic_set(&sem->block, 0); in __percpu_init_rwsem()
26 debug_check_no_locks_freed((void *)sem, sizeof(*sem)); in __percpu_init_rwsem()
39 if (!sem->read_count) in percpu_free_rwsem()
42 rcu_sync_dtor(&sem->rss); in percpu_free_rwsem()
43 free_percpu(sem->read_count); in percpu_free_rwsem()
197 return per_cpu_sum(*sem->read_count) != 0 && !atomic_read(&sem->block); in percpu_is_read_locked()
278 __wake_up(&sem->waiters, TASK_NORMAL, 1, sem); in percpu_up_write()
[all …]
A Dsemaphore.c60 if (likely(sem->count > 0)) in down()
61 sem->count--; in down()
63 __down(sem); in down()
84 if (likely(sem->count > 0)) in down_interruptible()
85 sem->count--; in down_interruptible()
112 sem->count--; in down_killable()
140 count = sem->count - 1; in down_trylock()
142 sem->count = count; in down_trylock()
167 sem->count--; in down_timeout()
189 sem->count++; in up()
[all …]
/linux/drivers/tty/
A Dtty_ldsem.c64 debug_check_no_locks_freed((void *)sem, sizeof(*sem)); in __init_ldsem()
68 sem->wait_readers = 0; in __init_ldsem()
148 __ldsem_wake(sem); in ldsem_wake()
176 return sem; in down_read_failed()
181 sem->wait_readers++; in down_read_failed()
188 __ldsem_wake(sem); in down_read_failed()
223 return sem; in down_read_failed()
249 return sem; in down_write_failed()
290 return sem; in down_write_failed()
397 ldsem_wake(sem); in ldsem_up_read()
[all …]
/linux/include/linux/
A Drwsem.h117 #define init_rwsem(sem) \ argument
121 __init_rwsem((sem), #sem, &__key); \
162 __init_rwsem((sem), #sem, &__key); \
195 lockdep_assert_held(sem); in rwsem_assert_held()
288 # define down_read_nested(sem, subclass) down_read(sem) argument
289 # define down_read_killable_nested(sem, subclass) down_read_killable(sem) argument
290 # define down_write_nest_lock(sem, nest_lock) down_write(sem) argument
291 # define down_write_nested(sem, subclass) down_write(sem) argument
292 # define down_write_killable_nested(sem, subclass) down_write_killable(sem) argument
293 # define down_read_non_owner(sem) down_read(sem) argument
[all …]
A Dpercpu-rwsem.h63 this_cpu_inc(*sem->read_count); in percpu_down_read()
82 this_cpu_inc(*sem->read_count); in percpu_down_read_trylock()
106 this_cpu_dec(*sem->read_count); in percpu_up_read()
118 this_cpu_dec(*sem->read_count); in percpu_up_read()
119 rcuwait_wake_up(&sem->writer); in percpu_up_read()
130 return atomic_read(&sem->block); in percpu_is_write_locked()
138 #define percpu_init_rwsem(sem) \ argument
141 __percpu_init_rwsem(sem, #sem, &rwsem_key); \
144 #define percpu_rwsem_is_held(sem) lockdep_is_held(sem) argument
145 #define percpu_rwsem_assert_held(sem) lockdep_assert_held(sem) argument
[all …]
A Dtty_ldisc.h28 void __init_ldsem(struct ld_semaphore *sem, const char *name,
31 #define init_ldsem(sem) \ argument
35 __init_ldsem((sem), #sem, &__key); \
40 int ldsem_down_read_trylock(struct ld_semaphore *sem);
42 int ldsem_down_write_trylock(struct ld_semaphore *sem);
43 void ldsem_up_read(struct ld_semaphore *sem);
44 void ldsem_up_write(struct ld_semaphore *sem);
52 # define ldsem_down_read_nested(sem, subclass, timeout) \ argument
53 ldsem_down_read(sem, timeout)
54 # define ldsem_down_write_nested(sem, subclass, timeout) \ argument
[all …]
A Dsemaphore.h37 static inline void sema_init(struct semaphore *sem, int val) in sema_init() argument
40 *sem = (struct semaphore) __SEMAPHORE_INITIALIZER(*sem, val); in sema_init()
41 lockdep_init_map(&sem->lock.dep_map, "semaphore->lock", &__key, 0); in sema_init()
44 extern void down(struct semaphore *sem);
45 extern int __must_check down_interruptible(struct semaphore *sem);
46 extern int __must_check down_killable(struct semaphore *sem);
47 extern int __must_check down_trylock(struct semaphore *sem);
48 extern int __must_check down_timeout(struct semaphore *sem, long jiffies);
49 extern void up(struct semaphore *sem);
/linux/tools/perf/util/
A Drwsem.c9 int init_rwsem(struct rw_semaphore *sem) in init_rwsem() argument
12 mutex_init(&sem->mtx); in init_rwsem()
19 int exit_rwsem(struct rw_semaphore *sem) in exit_rwsem() argument
22 mutex_destroy(&sem->mtx); in exit_rwsem()
29 int down_read(struct rw_semaphore *sem) in down_read() argument
32 mutex_lock(&sem->mtx); in down_read()
39 int up_read(struct rw_semaphore *sem) in up_read() argument
42 mutex_unlock(&sem->mtx); in up_read()
52 mutex_lock(&sem->mtx); in down_write()
59 int up_write(struct rw_semaphore *sem) in up_write() argument
[all …]
A Drwsem.h21 int init_rwsem(struct rw_semaphore *sem);
22 int exit_rwsem(struct rw_semaphore *sem);
24 int down_read(struct rw_semaphore *sem);
25 int up_read(struct rw_semaphore *sem);
27 int down_write(struct rw_semaphore *sem);
28 int up_write(struct rw_semaphore *sem);
/linux/tools/include/linux/
A Drwsem.h11 static inline int init_rwsem(struct rw_semaphore *sem) in init_rwsem() argument
13 return pthread_rwlock_init(&sem->lock, NULL); in init_rwsem()
16 static inline int exit_rwsem(struct rw_semaphore *sem) in exit_rwsem() argument
18 return pthread_rwlock_destroy(&sem->lock); in exit_rwsem()
23 return pthread_rwlock_rdlock(&sem->lock); in down_read()
26 static inline int up_read(struct rw_semaphore *sem) in up_read() argument
28 return pthread_rwlock_unlock(&sem->lock); in up_read()
33 return pthread_rwlock_wrlock(&sem->lock); in down_write()
38 return pthread_rwlock_unlock(&sem->lock); in up_write()
41 #define down_read_nested(sem, subclass) down_read(sem) argument
[all …]
/linux/drivers/misc/
A Dntsync.c48 } sem; member
66 if (check_add_overflow(sem->u.sem.count, count, &sum) || in post_sem_state()
67 sum > sem->u.sem.max) in post_sem_state()
70 sem->u.sem.count = sum; in post_sem_state()
87 spin_lock(&sem->lock); in ntsync_sem_post()
89 prev_count = sem->u.sem.count; in ntsync_sem_post()
92 spin_unlock(&sem->lock); in ntsync_sem_post()
180 if (!sem) in ntsync_create_sem()
182 sem->u.sem.count = args.count; in ntsync_create_sem()
183 sem->u.sem.max = args.max; in ntsync_create_sem()
[all …]
/linux/drivers/net/ethernet/mellanox/mlx5/core/lib/
A Ddevcom.c33 struct rw_semaphore sem; member
122 init_rwsem(&comp->sem); in mlx5_devcom_comp_alloc()
159 down_write(&comp->sem); in devcom_alloc_comp_dev()
161 up_write(&comp->sem); in devcom_alloc_comp_dev()
171 down_write(&comp->sem); in devcom_free_comp_dev()
173 up_write(&comp->sem); in devcom_free_comp_dev()
279 down_write(&comp->sem); in mlx5_devcom_send_event()
290 up_write(&comp->sem); in mlx5_devcom_send_event()
304 up_write(&comp->sem); in mlx5_devcom_send_event()
331 down_read(&comp->sem); in mlx5_devcom_for_each_peer_begin()
[all …]
/linux/tools/power/acpi/os_specific/service_layers/
A Dosunixxf.c630 sem_t *sem; in acpi_os_create_semaphore() local
643 sem = in acpi_os_create_semaphore()
646 if (!sem) { in acpi_os_create_semaphore()
654 if (!sem) { in acpi_os_create_semaphore()
659 acpi_os_free(sem); in acpi_os_create_semaphore()
684 if (!sem) { in acpi_os_delete_semaphore()
688 if (sem_close(sem) == -1) { in acpi_os_delete_semaphore()
692 if (sem_destroy(sem) == -1) { in acpi_os_delete_semaphore()
724 if (!sem) { in acpi_os_wait_semaphore()
837 if (!sem) { in acpi_os_signal_semaphore()
[all …]
/linux/fs/jffs2/
A Ddir.c97 mutex_lock(&dir_f->sem); in jffs2_lookup()
135 mutex_lock(&f->sem); in jffs2_readdir()
156 mutex_unlock(&f->sem); in jffs2_readdir()
201 mutex_unlock(&f->sem); in jffs2_create()
272 mutex_lock(&f->sem); in jffs2_link()
274 mutex_unlock(&f->sem); in jffs2_link()
374 mutex_unlock(&f->sem); in jffs2_symlink()
519 mutex_unlock(&f->sem); in jffs2_mkdir()
603 mutex_lock(&f->sem); in jffs2_rmdir()
610 mutex_unlock(&f->sem); in jffs2_rmdir()
[all …]
A Dwrite.c145 mutex_unlock(&f->sem); in jffs2_write_dnode()
150 mutex_lock(&f->sem); in jffs2_write_dnode()
302 mutex_lock(&f->sem); in jffs2_write_dirent()
368 mutex_lock(&f->sem); in jffs2_write_inode_range()
397 mutex_unlock(&f->sem); in jffs2_write_inode_range()
420 mutex_unlock(&f->sem); in jffs2_write_inode_range()
424 mutex_unlock(&f->sem); in jffs2_write_inode_range()
460 mutex_lock(&f->sem); in jffs2_do_create()
473 mutex_unlock(&f->sem); in jffs2_do_create()
482 mutex_unlock(&f->sem); in jffs2_do_create()
[all …]
A Dfile.c118 mutex_lock(&f->sem); in jffs2_read_folio()
120 mutex_unlock(&f->sem); in jffs2_read_folio()
151 mutex_lock(&f->sem); in jffs2_write_begin()
178 mutex_unlock(&f->sem); in jffs2_write_begin()
193 mutex_unlock(&f->sem); in jffs2_write_begin()
198 mutex_unlock(&f->sem); in jffs2_write_begin()
221 mutex_lock(&f->sem); in jffs2_write_begin()
223 mutex_unlock(&f->sem); in jffs2_write_begin()
/linux/drivers/gpu/drm/gma500/
A Dmmu.c89 down_write(&driver->sem);
91 up_write(&driver->sem);
101 down_write(&driver->sem); in psb_mmu_flush()
118 up_write(&driver->sem); in psb_mmu_flush()
238 down_write(&driver->sem); in psb_mmu_free_pagedir()
258 up_write(&driver->sem); in psb_mmu_free_pagedir()
403 down_read(&driver->sem); in psb_mmu_get_default_pd()
405 up_read(&driver->sem); in psb_mmu_get_default_pd()
440 init_rwsem(&driver->sem); in psb_mmu_driver_init()
441 down_write(&driver->sem); in psb_mmu_driver_init()
[all …]
/linux/drivers/gpu/drm/radeon/
A Dradeon_trace.h170 TP_PROTO(int ring, struct radeon_semaphore *sem),
172 TP_ARGS(ring, sem),
182 __entry->waiters = sem->waiters;
183 __entry->gpu_addr = sem->gpu_addr;
192 TP_PROTO(int ring, struct radeon_semaphore *sem),
194 TP_ARGS(ring, sem)
199 TP_PROTO(int ring, struct radeon_semaphore *sem),
201 TP_ARGS(ring, sem)
/linux/drivers/infiniband/core/
A Dnetlink.c50 struct rw_semaphore sem; member
99 up_read(&rdma_nl_types[type].sem); in get_cb_table()
103 down_read(&rdma_nl_types[type].sem); in get_cb_table()
125 down_write(&rdma_nl_types[index].sem); in rdma_nl_unregister()
127 up_write(&rdma_nl_types[index].sem); in rdma_nl_unregister()
164 down_read(&rdma_nl_types[index].sem); in rdma_nl_rcv_msg()
197 up_read(&rdma_nl_types[index].sem); in rdma_nl_rcv_msg()
296 init_rwsem(&rdma_nl_types[idx].sem); in rdma_nl_init()
/linux/tools/testing/selftests/kvm/
A Dhardware_disable_test.c25 sem_t *sem; variable
114 sem_post(sem); in run_test()
131 if (!sem_timedwait(sem, &wait_period)) in wait_for_child_setup()
157 sem = sem_open("vm_sem", O_CREAT | O_EXCL, 0644, 0); in main()
179 sem_destroy(sem); in main()
/linux/drivers/net/ethernet/mellanox/mlx4/
A Dreset.c51 u32 sem; in mlx4_reset() local
104 sem = readl(reset + MLX4_SEM_OFFSET); in mlx4_reset()
105 if (!sem) in mlx4_reset()
111 if (sem) { in mlx4_reset()
/linux/arch/x86/platform/intel/
A Diosf_mbi.c247 static int iosf_mbi_get_sem(u32 *sem) in iosf_mbi_get_sem() argument
252 iosf_mbi_sem_address, sem); in iosf_mbi_get_sem()
258 *sem &= PUNIT_SEMAPHORE_BIT; in iosf_mbi_get_sem()
316 u32 sem; in iosf_mbi_block_punit_i2c_access() local
355 ret = iosf_mbi_get_sem(&sem); in iosf_mbi_block_punit_i2c_access()
356 if (!ret && sem) { in iosf_mbi_block_punit_i2c_access()
370 if (!iosf_mbi_get_sem(&sem)) in iosf_mbi_block_punit_i2c_access()
371 dev_err(&mbi_pdev->dev, "P-Unit semaphore: %d\n", sem); in iosf_mbi_block_punit_i2c_access()
/linux/security/keys/
A Dkeyring.c1059 down_write(&keyring->sem); in keyring_restrict()
1072 up_write(&keyring->sem); in keyring_restrict()
1241 __acquires(&keyring->sem) in __key_link_lock()
1388 __releases(&keyring->sem) in __key_link_end()
1401 up_write(&keyring->sem); in __key_link_end()
1475 __acquires(&keyring->sem) in __key_unlink_lock()
1524 __releases(&keyring->sem) in __key_unlink_end()
1528 up_write(&keyring->sem); in __key_unlink_end()
1671 up_write(&keyring->sem); in keyring_clear()
1745 up_write(&keyring->sem); in keyring_gc()
[all …]
/linux/ipc/
A Dsem.c95 struct sem { struct
126 struct sem sems[]; argument
296 struct sem *curr; in unmerge_queues()
317 struct sem *sem = &sma->sems[i]; in merge_queues() local
339 struct sem *sem; in complexmode_enter() local
392 struct sem *sem; in sem_lock() local
467 struct sem *sem = &sma->sems[locknum]; in sem_unlock() local
651 struct sem *curr; in perform_atomic_semop_slow()
723 struct sem *curr; in perform_atomic_semop()
1173 struct sem *sem = &sma->sems[i]; in freeary() local
[all …]

Completed in 52 milliseconds

123456