Home
last modified time | relevance | path

Searched refs:semaphore (Results 1 – 25 of 127) sorted by relevance

123456

/linux/drivers/gpu/drm/radeon/
H A Dradeon_semaphore.c35 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 …]
H A Dradeon_sync.c130 struct radeon_semaphore *semaphore; in radeon_sync_rings() local
149 r = radeon_semaphore_create(rdev, &semaphore); in radeon_sync_rings()
153 sync->semaphores[count++] = semaphore; in radeon_sync_rings()
161 if (!radeon_semaphore_emit_signal(rdev, i, semaphore)) { in radeon_sync_rings()
171 if (!radeon_semaphore_emit_wait(rdev, ring, semaphore)) { in radeon_sync_rings()
H A Duvd_v3_1.c41 struct radeon_semaphore *semaphore, in uvd_v3_1_semaphore_emit() argument
44 uint64_t addr = semaphore->gpu_addr; in uvd_v3_1_semaphore_emit()
H A Duvd_v2_2.c74 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/kernel/locking/
H A Dsemaphore.c39 static noinline void __down(struct semaphore *sem);
40 static noinline int __down_interruptible(struct semaphore *sem);
41 static noinline int __down_killable(struct semaphore *sem);
42 static noinline int __down_timeout(struct semaphore *sem, long timeout);
43 static noinline void __up(struct semaphore *sem, struct wake_q_head *wake_q);
46 static inline void hung_task_sem_set_holder(struct semaphore *sem) in hung_task_sem_set_holder()
51 static inline void hung_task_sem_clear_if_holder(struct semaphore *sem) in hung_task_sem_clear_if_holder()
57 unsigned long sem_last_holder(struct semaphore *sem) in sem_last_holder()
62 static inline void hung_task_sem_set_holder(struct semaphore *sem) in hung_task_sem_set_holder()
65 static inline void hung_task_sem_clear_if_holder(struct semaphore *sem) in hung_task_sem_clear_if_holder()
[all …]
/linux/include/linux/
H A Dsemaphore.h15 struct semaphore { struct
47 struct semaphore _name = __SEMAPHORE_INITIALIZER(_name, _n)
49 static inline void sema_init(struct semaphore *sem, int val) in sema_init()
52 *sem = (struct semaphore) __SEMAPHORE_INITIALIZER(*sem, val); in sema_init()
56 extern void down(struct semaphore *sem);
57 extern int __must_check down_interruptible(struct semaphore *sem);
58 extern int __must_check down_killable(struct semaphore *sem);
59 extern int __must_check down_trylock(struct semaphore *sem);
60 extern int __must_check down_timeout(struct semaphore *sem, long jiffies);
61 extern void up(struct semaphore *sem);
[all …]
H A Dhil_mlc.h136 struct semaphore csem; /* Raised when loop idle */
139 struct semaphore osem; /* Raised when outpacket dispatched */
143 struct semaphore isem; /* Raised when a packet arrives */
H A Dhp_sdc.h71 struct semaphore *semaphore; /* Semaphore to sleep on. */ member
/linux/include/drm/
H A Dtask_barrier.h42 struct semaphore enter_turnstile;
43 struct semaphore exit_turnstile;
46 static inline void task_barrier_signal_turnstile(struct semaphore *turnstile, in task_barrier_signal_turnstile()
/linux/drivers/input/serio/
H A Dhp_sdc_mlc.c193 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()
/linux/drivers/acpi/acpica/
H A Dexsystem.c31 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/fs/jffs2/
H A DREADME.Locking141 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/drivers/input/misc/
H A Dhp_sdc_rtc.c58 static struct semaphore i8042tregs;
68 struct semaphore tsem; in hp_sdc_rtc_do_read_bbrtc()
87 t.act.semaphore = &tsem; in hp_sdc_rtc_do_read_bbrtc()
159 t.act.semaphore = &i8042tregs; in hp_sdc_rtc_read_i8042timer()
/linux/drivers/md/dm-vdo/indexer/
H A Dsparse-cache.c145 struct semaphore lock;
147 struct semaphore wait;
178 static inline void __down(struct semaphore *semaphore) in __down() argument
184 while (down_interruptible(semaphore) != 0) { in __down()
/linux/include/linux/raspberrypi/
H A Dvchiq_arm.h48 struct semaphore free_fragments_sema;
49 struct semaphore free_fragments_mutex;
/linux/Documentation/driver-api/serial/
H A Ddriver.rst43 There are two locks. A per-port spinlock, and an overall semaphore.
56 The port_sem semaphore is used to protect against ports being added/
58 semaphore has been the 'mutex' member of the tty_port struct, and
/linux/drivers/net/ethernet/huawei/hinic/
H A Dhinic_hw_mbox.h92 struct semaphore mbox_send_sem;
93 struct semaphore msg_send_sem;
/linux/Documentation/networking/
H A Dnetdevices.rst213 Synchronization: rtnl_lock() semaphore. In addition, netdev instance
218 Synchronization: rtnl_lock() semaphore. In addition, netdev instance
224 Synchronization: rtnl_lock() semaphore.
231 Synchronization: rtnl_lock() semaphore. In addition, netdev instance
239 Synchronization: rtnl_lock() semaphore. In addition, netdev instance
247 Synchronization: rtnl_lock() semaphore. In addition, netdev instance
255 Synchronization: rtnl_lock() semaphore. In addition, netdev instance
/linux/Documentation/locking/
H A Dindex.rst24 percpu-rw-semaphore
/linux/Documentation/translations/zh_CN/locking/
H A Dindex.rst34 * percpu-rw-semaphore
/linux/drivers/net/wireless/st/cw1200/
H A Dscan.h22 struct semaphore lock;
/linux/include/linux/mux/
H A Ddriver.h45 struct semaphore lock; /* protects the state of the mux */
/linux/drivers/scsi/qla4xxx/
H A Dql4_dbg.c71 (uint8_t) offsetof(struct isp_reg, u1.isp4022.semaphore), in qla4xxx_dump_registers()
72 readw(&ha->reg->u1.isp4022.semaphore)); in qla4xxx_dump_registers()
/linux/drivers/gpu/drm/xe/
H A Dxe_guc_submit_types.h39 u32 semaphore; member
/linux/drivers/platform/x86/amd/hsmp/
H A Dhsmp.h45 struct semaphore hsmp_sem;

123456