/Linux-v5.4/drivers/gpu/drm/radeon/ |
D | radeon_semaphore.c | 50 (*semaphore)->waiters = 0; in radeon_semaphore_create() 66 --semaphore->waiters; in radeon_semaphore_emit_signal() 83 ++semaphore->waiters; in radeon_semaphore_emit_wait() 99 if ((*semaphore)->waiters > 0) { in radeon_semaphore_free()
|
D | radeon_trace.h | 176 __field(signed, waiters) 182 __entry->waiters = sem->waiters; 187 __entry->waiters, __entry->gpu_addr)
|
/Linux-v5.4/Documentation/locking/ |
D | rt-mutex.rst | 32 The enqueueing of the waiters into the rtmutex waiter tree is done in 35 priority waiters tree. This tree too queues in priority order. Whenever 42 without waiters. The optimized fastpath operations require cmpxchg 50 keep track of the "lock has waiters" state: 56 NULL 1 lock is free and has waiters and the top waiter 59 taskpointer 1 lock is held and has waiters [2]_ 71 waiters. This can happen when grabbing the lock in the slow path.
|
D | rt-mutex-design.rst | 107 place the task in the waiters rbtree of a mutex as well as the 113 waiters 199 Every mutex keeps track of all the waiters that are blocked on itself. The 200 mutex has a rbtree to store these waiters by priority. This tree is protected 209 a tree of all top waiters of the mutexes that are owned by the process. 210 Note that this tree only holds the top waiters and not all waiters that are 309 flag. It's set whenever there are waiters on a mutex. 358 the pi_waiters of a task holds an order by priority of all the top waiters 410 in the pi_waiters and waiters trees that the task is blocked on. This function 434 the task on the waiters tree of the mutex, and if need be, the pi_waiters [all …]
|
D | ww-mutex-design.rst | 344 (1) Waiters with an acquire context are sorted by stamp order; waiters 346 (2) For Wait-Die, among waiters with contexts, only the first one can have 348 may come after other waiters without contexts in the list.
|
/Linux-v5.4/drivers/md/persistent-data/ |
D | dm-block-manager.c | 46 struct list_head waiters; member 153 list_for_each_entry_safe(w, tmp, &lock->waiters, list) { in __wake_many() 179 INIT_LIST_HEAD(&lock->waiters); in bl_init() 188 list_empty(&lock->waiters); in __available_for_read() 214 list_add_tail(&w.list, &lock->waiters); in bl_down_read() 249 if (!list_empty(&lock->waiters)) in bl_up_read() 266 if (lock->count == 0 && list_empty(&lock->waiters)) { in bl_down_write() 281 list_add(&w.list, &lock->waiters); in bl_down_write() 295 if (!list_empty(&lock->waiters)) in bl_up_write()
|
/Linux-v5.4/include/linux/ |
D | rtmutex.h | 32 struct rb_root_cached waiters; member 87 , .waiters = RB_ROOT_CACHED \
|
D | page-flags.h | 313 PAGEFLAG(Waiters, waiters, PF_ONLY_HEAD) __CLEARPAGEFLAG(Waiters, waiters, PF_ONLY_HEAD)
|
/Linux-v5.4/kernel/locking/ |
D | rtmutex_common.h | 49 return !RB_EMPTY_ROOT(&lock->waiters.rb_root); in rt_mutex_has_waiters() 55 struct rb_node *leftmost = rb_first_cached(&lock->waiters); in rt_mutex_top_waiter()
|
D | rtmutex.c | 275 struct rb_node **link = &lock->waiters.rb_root.rb_node; in rt_mutex_enqueue() 292 rb_insert_color_cached(&waiter->tree_entry, &lock->waiters, leftmost); in rt_mutex_enqueue() 301 rb_erase_cached(&waiter->tree_entry, &lock->waiters); in rt_mutex_dequeue() 1680 lock->waiters = RB_ROOT_CACHED; in __rt_mutex_init()
|
/Linux-v5.4/drivers/greybus/ |
D | greybus_trace.h | 102 __field(int, waiters) 112 __entry->waiters = atomic_read(&operation->waiters); 118 __entry->active, __entry->waiters, __entry->errno)
|
D | operation.c | 90 if (atomic_read(&operation->waiters)) in gb_operation_put_active() 554 atomic_set(&operation->waiters, 0); in gb_operation_create_common() 1082 atomic_inc(&operation->waiters); in gb_operation_cancel() 1085 atomic_dec(&operation->waiters); in gb_operation_cancel() 1109 atomic_inc(&operation->waiters); in gb_operation_cancel_incoming() 1112 atomic_dec(&operation->waiters); in gb_operation_cancel_incoming()
|
/Linux-v5.4/Documentation/ |
D | futex-requeue-pi.txt | 7 left without an owner if it has waiters; doing so would break the PI 48 has waiters. Note that pthread_cond_wait() attempts to lock the 50 underlying rt_mutex with waiters, and no owner, breaking the 89 In order to ensure the rt_mutex has an owner if it has waiters, it
|
D | robust-futexes.txt | 24 sys_futex(FUTEX_WAKE) syscall to wake them up. Once all waiters have 33 pthread_mutex_t, or yum is kill -9-ed), then waiters for that lock need
|
D | pi-futex.txt | 111 pi_state->rt_mutex and thus wakes up any potential waiters.
|
/Linux-v5.4/drivers/gpu/drm/amd/amdkfd/ |
D | kfd_events.c | 653 static void free_waiters(uint32_t num_events, struct kfd_event_waiter *waiters) in free_waiters() argument 658 if (waiters[i].event) in free_waiters() 659 remove_wait_queue(&waiters[i].event->wq, in free_waiters() 660 &waiters[i].wait); in free_waiters() 662 kfree(waiters); in free_waiters()
|
/Linux-v5.4/drivers/tee/optee/ |
D | call.c | 42 list_add_tail(&w->list_node, &cq->waiters); in optee_cq_wait_init() 57 list_add_tail(&w->list_node, &cq->waiters); in optee_cq_wait_for_completion() 66 list_for_each_entry(w, &cq->waiters, list_node) { in optee_cq_complete_one()
|
D | optee_private.h | 34 struct list_head waiters; member
|
D | core.c | 635 INIT_LIST_HEAD(&optee->call_queue.waiters); in optee_probe()
|
/Linux-v5.4/Documentation/scheduler/ |
D | completion.rst | 247 achieved calls complete() to signal exactly one of the waiters that it can 252 ... or calls complete_all() to signal all current and future waiters:: 262 of waiters to continue - each call to complete() will simply increment the 287 completions that were not yet consumed by waiters (implying that there are 288 waiters) and true otherwise::
|
/Linux-v5.4/include/linux/greybus/ |
D | operation.h | 108 atomic_t waiters; member
|
/Linux-v5.4/fs/xfs/ |
D | xfs_log_priv.h | 340 struct list_head waiters; member
|
D | xfs_log.c | 176 INIT_LIST_HEAD(&head->waiters); in xlog_grant_head_init() 187 list_for_each_entry(tic, &head->waiters, t_queue) in xlog_grant_head_wake_all() 219 list_for_each_entry(tic, &head->waiters, t_queue) { in xlog_grant_head_wake() 266 list_add_tail(&tic->t_queue, &head->waiters); in xlog_grant_head_wait() 331 if (!list_empty_careful(&head->waiters)) { in xlog_grant_head_check() 1057 if (!list_empty_careful(&log->l_write_head.waiters)) { in xfs_log_space_wake() 1066 if (!list_empty_careful(&log->l_reserve_head.waiters)) { in xfs_log_space_wake()
|
/Linux-v5.4/kernel/ |
D | futex.c | 254 atomic_t waiters; member 345 atomic_inc(&hb->waiters); in hb_waiters_inc() 360 atomic_dec(&hb->waiters); in hb_waiters_dec() 367 return atomic_read(&hb->waiters); in hb_waiters_pending() 3937 atomic_set(&futex_queues[i].waiters, 0); in futex_init()
|
/Linux-v5.4/kernel/trace/ |
D | ring_buffer.c | 404 wait_queue_head_t waiters; member 558 wake_up_all(&rbwork->waiters); in rb_wake_up_waiters() 603 prepare_to_wait(&work->waiters, &wait, TASK_INTERRUPTIBLE); in ring_buffer_wait() 667 finish_wait(&work->waiters, &wait); in ring_buffer_wait() 702 poll_wait(filp, &work->waiters, poll_table); in ring_buffer_poll_wait() 1305 init_waitqueue_head(&cpu_buffer->irq_work.waiters); in rb_allocate_cpu_buffer() 1400 init_waitqueue_head(&buffer->irq_work.waiters); in __ring_buffer_alloc()
|