/Linux-v4.19/drivers/gpu/drm/radeon/ |
D | radeon_semaphore.c | 35 struct radeon_semaphore **semaphore) in radeon_semaphore_create() argument 39 *semaphore = kmalloc(sizeof(struct radeon_semaphore), GFP_KERNEL); in radeon_semaphore_create() 40 if (*semaphore == NULL) { in radeon_semaphore_create() 44 &(*semaphore)->sa_bo, 8, 8); in radeon_semaphore_create() 46 kfree(*semaphore); in radeon_semaphore_create() 47 *semaphore = NULL; in radeon_semaphore_create() 50 (*semaphore)->waiters = 0; in radeon_semaphore_create() 51 (*semaphore)->gpu_addr = radeon_sa_bo_gpu_addr((*semaphore)->sa_bo); in radeon_semaphore_create() 53 *((uint64_t *)radeon_sa_bo_cpu_addr((*semaphore)->sa_bo)) = 0; in radeon_semaphore_create() 59 struct radeon_semaphore *semaphore) in radeon_semaphore_emit_signal() argument [all …]
|
D | radeon_test.c | 318 struct radeon_semaphore *semaphore = NULL; in radeon_test_ring_sync() local 321 r = radeon_semaphore_create(rdev, &semaphore); in radeon_test_ring_sync() 332 radeon_semaphore_emit_wait(rdev, ringA->idx, semaphore); in radeon_test_ring_sync() 344 radeon_semaphore_emit_wait(rdev, ringA->idx, semaphore); in radeon_test_ring_sync() 363 radeon_semaphore_emit_signal(rdev, ringB->idx, semaphore); in radeon_test_ring_sync() 384 radeon_semaphore_emit_signal(rdev, ringB->idx, semaphore); in radeon_test_ring_sync() 394 radeon_semaphore_free(rdev, &semaphore, NULL); in radeon_test_ring_sync() 412 struct radeon_semaphore *semaphore = NULL; in radeon_test_ring_sync2() local 416 r = radeon_semaphore_create(rdev, &semaphore); in radeon_test_ring_sync2() 427 radeon_semaphore_emit_wait(rdev, ringA->idx, semaphore); in radeon_test_ring_sync2() [all …]
|
D | radeon_sync.c | 146 struct radeon_semaphore *semaphore; in radeon_sync_rings() local 165 r = radeon_semaphore_create(rdev, &semaphore); in radeon_sync_rings() 169 sync->semaphores[count++] = semaphore; in radeon_sync_rings() 177 if (!radeon_semaphore_emit_signal(rdev, i, semaphore)) { in radeon_sync_rings() 187 if (!radeon_semaphore_emit_wait(rdev, ring, semaphore)) { in radeon_sync_rings()
|
D | uvd_v3_1.c | 42 struct radeon_semaphore *semaphore, in uvd_v3_1_semaphore_emit() argument 45 uint64_t addr = semaphore->gpu_addr; in uvd_v3_1_semaphore_emit()
|
D | uvd_v2_2.c | 74 struct radeon_semaphore *semaphore, in uvd_v2_2_semaphore_emit() argument 77 uint64_t addr = semaphore->gpu_addr; in uvd_v2_2_semaphore_emit()
|
/Linux-v4.19/include/linux/ |
D | semaphore.h | 16 struct semaphore { struct 30 struct semaphore name = __SEMAPHORE_INITIALIZER(name, 1) argument 32 static inline void sema_init(struct semaphore *sem, int val) in sema_init() 35 *sem = (struct semaphore) __SEMAPHORE_INITIALIZER(*sem, val); in sema_init() 39 extern void down(struct semaphore *sem); 40 extern int __must_check down_interruptible(struct semaphore *sem); 41 extern int __must_check down_killable(struct semaphore *sem); 42 extern int __must_check down_trylock(struct semaphore *sem); 43 extern int __must_check down_timeout(struct semaphore *sem, long jiffies); 44 extern void up(struct semaphore *sem);
|
D | hil_mlc.h | 136 struct semaphore csem; /* Raised when loop idle */ 139 struct semaphore osem; /* Raised when outpacket dispatched */ 143 struct semaphore isem; /* Raised when a packet arrives */
|
D | hp_sdc.h | 71 struct semaphore *semaphore; /* Semaphore to sleep on. */ member
|
/Linux-v4.19/kernel/locking/ |
D | semaphore.c | 37 static noinline void __down(struct semaphore *sem); 38 static noinline int __down_interruptible(struct semaphore *sem); 39 static noinline int __down_killable(struct semaphore *sem); 40 static noinline int __down_timeout(struct semaphore *sem, long timeout); 41 static noinline void __up(struct semaphore *sem); 54 void down(struct semaphore *sem) in down() 76 int down_interruptible(struct semaphore *sem) in down_interruptible() 102 int down_killable(struct semaphore *sem) in down_killable() 131 int down_trylock(struct semaphore *sem) in down_trylock() 156 int down_timeout(struct semaphore *sem, long timeout) in down_timeout() [all …]
|
/Linux-v4.19/drivers/staging/vc04_services/interface/vchiq_arm/ |
D | vchiq_core.h | 311 struct semaphore remove_event; 312 struct semaphore bulk_remove_event; 341 struct semaphore quota_event; 415 struct semaphore connect; 431 struct semaphore trigger_event; 434 struct semaphore recycle_event; 437 struct semaphore sync_trigger_event; 440 struct semaphore sync_release_event; 486 struct semaphore slot_available_event; 488 struct semaphore slot_remove_event; [all …]
|
D | vchiq_util.h | 63 struct semaphore pop; 64 struct semaphore push;
|
D | vchiq_killable.h | 42 static inline int __must_check down_interruptible_killable(struct semaphore *sem) in down_interruptible_killable()
|
/Linux-v4.19/drivers/input/serio/ |
D | hp_sdc_mlc.c | 193 if (priv->trans.act.semaphore != &mlc->csem) in hp_sdc_mlc_cts() 203 priv->trans.act.semaphore = &mlc->csem; in hp_sdc_mlc_cts() 217 priv->trans.act.semaphore = &mlc->osem; in hp_sdc_mlc_cts() 245 priv->trans.act.semaphore = &mlc->osem; in hp_sdc_mlc_out() 286 priv->trans.act.semaphore = &mlc->osem; in hp_sdc_mlc_out() 316 hp_sdc_mlc_priv.trans.act.semaphore = &mlc->osem; in hp_sdc_mlc_init()
|
D | hp_sdc.c | 201 if (curr->act.semaphore) in hp_sdc_take() 202 up(curr->act.semaphore); in hp_sdc_take() 328 if (curr->act.semaphore) in hp_sdc_tasklet() 329 up(curr->act.semaphore); in hp_sdc_tasklet() 566 up(curr->act.semaphore); in hp_sdc_put() 833 struct semaphore s_sync; in hp_sdc_init() 903 t_sync.act.semaphore = &s_sync; in hp_sdc_init() 998 struct semaphore tq_init_sem; in hp_sdc_register() 1039 tq_init.act.semaphore = &tq_init_sem; in hp_sdc_register()
|
/Linux-v4.19/drivers/acpi/acpica/ |
D | exsystem.c | 31 acpi_status acpi_ex_system_wait_semaphore(acpi_semaphore semaphore, u16 timeout) in acpi_ex_system_wait_semaphore() argument 37 status = acpi_os_wait_semaphore(semaphore, 1, ACPI_DO_NOT_WAIT); in acpi_ex_system_wait_semaphore() 47 status = acpi_os_wait_semaphore(semaphore, 1, timeout); in acpi_ex_system_wait_semaphore()
|
/Linux-v4.19/drivers/char/ |
D | snsc.h | 37 struct semaphore sd_rbs; /* semaphore for read buffer */ 38 struct semaphore sd_wbs; /* semaphore for write buffer */
|
/Linux-v4.19/fs/jffs2/ |
D | README.Locking | 141 This read/write semaphore protects against concurrent access to the 154 This read/write semaphore protects against concurrent access to the 156 In read-only path, write-semaphore is too much exclusion. It's enough 157 by read-semaphore. But you must hold write-semaphore when updating, 162 when updating such a object is necessary under holding read semaphore. 163 For example, do_jffs2_getxattr() holds read-semaphore to scan xref and 164 xdatum at first. But it retries this process with holding write-semaphore 165 after release read-semaphore, if it's necessary to load name/value pair
|
/Linux-v4.19/Documentation/ |
D | percpu-rw-semaphore.txt | 5 Percpu rw semaphores is a new read-write semaphore design that is 9 cores take the lock for reading, the cache line containing the semaphore
|
/Linux-v4.19/drivers/staging/vc04_services/interface/vchi/message_drivers/ |
D | message.h | 80 struct semaphore sem; 101 struct semaphore *blocking;
|
/Linux-v4.19/drivers/md/bcache/ |
D | bcache.h | 307 struct semaphore sb_write_mutex; 336 struct semaphore in_flight; 530 struct semaphore sb_write_mutex; 641 struct semaphore moving_in_flight; 657 struct semaphore uuid_write_mutex;
|
/Linux-v4.19/drivers/net/ethernet/huawei/hinic/ |
D | hinic_dev.h | 51 struct semaphore mgmt_lock;
|
/Linux-v4.19/Documentation/networking/ |
D | netdevices.txt | 51 Synchronization: rtnl_lock() semaphore. 55 Synchronization: rtnl_lock() semaphore. 60 Synchronization: rtnl_lock() semaphore.
|
/Linux-v4.19/drivers/input/misc/ |
D | hp_sdc_rtc.c | 59 static struct semaphore i8042tregs; 86 struct semaphore tsem; in hp_sdc_rtc_do_read_bbrtc() 105 t.act.semaphore = &tsem; in hp_sdc_rtc_do_read_bbrtc() 177 t.act.semaphore = &i8042tregs; in hp_sdc_rtc_read_i8042timer()
|
/Linux-v4.19/drivers/net/wireless/st/cw1200/ |
D | scan.h | 25 struct semaphore lock;
|
/Linux-v4.19/include/linux/mux/ |
D | driver.h | 43 struct semaphore lock; /* protects the state of the mux */
|