Home
last modified time | relevance | path

Searched refs:top_waiter (Results 1 – 5 of 5) sorted by relevance

/linux/kernel/futex/
H A Drequeue.c275 * - >0 - acquired the lock, return value is vpid of the top_waiter
284 struct futex_q *top_waiter; in futex_proxy_trylock_atomic() local
295 * Find the top_waiter and determine if there are additional waiters. in futex_proxy_trylock_atomic()
302 top_waiter = futex_top_waiter(hb1, key1); in futex_proxy_trylock_atomic()
305 if (!top_waiter) in futex_proxy_trylock_atomic()
312 if (!top_waiter->rt_waiter || top_waiter->pi_state) in futex_proxy_trylock_atomic()
316 if (!futex_match(top_waiter->requeue_pi_key, key2)) in futex_proxy_trylock_atomic()
320 if (!futex_requeue_pi_prepare(top_waiter, NULL)) in futex_proxy_trylock_atomic()
324 * Try to take the lock for top_waiter an in futex_proxy_trylock_atomic()
[all...]
H A Dpi.c523 struct futex_q *top_waiter; in futex_lock_pi_atomic() local
549 top_waiter = futex_top_waiter(hb, key); in futex_lock_pi_atomic()
550 if (top_waiter) in futex_lock_pi_atomic()
551 return attach_to_pi_state(uaddr, uval, top_waiter->pi_state, ps); in futex_lock_pi_atomic()
616 struct rt_mutex_waiter *top_waiter) in wake_futex_pi() argument
624 new_owner = top_waiter->task; in wake_futex_pi()
1136 struct futex_q *top_waiter; in futex_unlock_pi() local
1164 top_waiter = futex_top_waiter(hb, &key); in futex_unlock_pi()
1165 if (top_waiter) { in futex_unlock_pi()
1166 struct futex_pi_state *pi_state = top_waiter in futex_unlock_pi()
[all...]
/linux/kernel/locking/
H A Drtmutex.c431 struct rt_mutex_waiter *top_waiter) in rt_mutex_steal() argument
433 if (rt_waiter_node_less(&waiter->tree, &top_waiter->tree)) in rt_mutex_steal()
444 return rt_waiter_node_equal(&waiter->tree, &top_waiter->tree); in rt_mutex_steal()
685 struct rt_mutex_waiter *waiter, *top_waiter = orig_waiter; in rt_mutex_adjust_prio_chain() local
797 * top_waiter can be NULL, when we are in the deboosting in rt_mutex_adjust_prio_chain()
800 if (top_waiter) { in rt_mutex_adjust_prio_chain()
809 if (top_waiter != task_top_pi_waiter(task)) { in rt_mutex_adjust_prio_chain()
915 top_waiter = rt_mutex_top_waiter(lock); in rt_mutex_adjust_prio_chain()
975 top_waiter = rt_mutex_top_waiter(lock); in rt_mutex_adjust_prio_chain()
976 if (prerequeue_top_waiter != top_waiter) in rt_mutex_adjust_prio_chain()
1123 struct rt_mutex_waiter *top_waiter = rt_mutex_top_waiter(lock); try_to_take_rt_mutex() local
1211 struct rt_mutex_waiter *top_waiter = waiter; task_blocks_on_rt_mutex() local
[all...]
/linux/Documentation/locking/
H A Drt-mutex.rst76 that anymore. The pending owner happens to be the top_waiter of a lock
H A Drt-mutex-design.rst459 owner of the lock, and if the lock still has waiters, the top_waiter
496 1) The previous lock owner released the lock, and the task now is top_waiter