Home
last modified time | relevance | path

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

1234567

/Linux-v4.19/drivers/gpu/drm/radeon/
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 …]
Dradeon_test.c318 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 …]
Dradeon_sync.c146 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()
Duvd_v3_1.c42 struct radeon_semaphore *semaphore, in uvd_v3_1_semaphore_emit() argument
45 uint64_t addr = semaphore->gpu_addr; in uvd_v3_1_semaphore_emit()
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-v4.19/include/linux/
Dsemaphore.h16 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);
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 */
Dhp_sdc.h71 struct semaphore *semaphore; /* Semaphore to sleep on. */ member
/Linux-v4.19/kernel/locking/
Dsemaphore.c37 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/
Dvchiq_core.h311 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 …]
Dvchiq_util.h63 struct semaphore pop;
64 struct semaphore push;
Dvchiq_killable.h42 static inline int __must_check down_interruptible_killable(struct semaphore *sem) in down_interruptible_killable()
/Linux-v4.19/drivers/input/serio/
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()
Dhp_sdc.c201 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/
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-v4.19/drivers/char/
Dsnsc.h37 struct semaphore sd_rbs; /* semaphore for read buffer */
38 struct semaphore sd_wbs; /* semaphore for write buffer */
/Linux-v4.19/fs/jffs2/
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-v4.19/Documentation/
Dpercpu-rw-semaphore.txt5 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/
Dmessage.h80 struct semaphore sem;
101 struct semaphore *blocking;
/Linux-v4.19/drivers/md/bcache/
Dbcache.h307 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/
Dhinic_dev.h51 struct semaphore mgmt_lock;
/Linux-v4.19/Documentation/networking/
Dnetdevices.txt51 Synchronization: rtnl_lock() semaphore.
55 Synchronization: rtnl_lock() semaphore.
60 Synchronization: rtnl_lock() semaphore.
/Linux-v4.19/drivers/input/misc/
Dhp_sdc_rtc.c59 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/
Dscan.h25 struct semaphore lock;
/Linux-v4.19/include/linux/mux/
Ddriver.h43 struct semaphore lock; /* protects the state of the mux */

1234567