Searched refs:top_waiter (Results 1 – 5 of 5) sorted by relevance
/linux-6.1.9/kernel/futex/ |
D | requeue.c | 272 struct futex_q *top_waiter = NULL; in futex_proxy_trylock_atomic() local 290 top_waiter = futex_top_waiter(hb1, key1); in futex_proxy_trylock_atomic() 293 if (!top_waiter) in futex_proxy_trylock_atomic() 300 if (!top_waiter->rt_waiter || top_waiter->pi_state) in futex_proxy_trylock_atomic() 304 if (!futex_match(top_waiter->requeue_pi_key, key2)) in futex_proxy_trylock_atomic() 308 if (!futex_requeue_pi_prepare(top_waiter, NULL)) in futex_proxy_trylock_atomic() 319 ret = futex_lock_pi_atomic(pifutex, hb2, key2, ps, top_waiter->task, in futex_proxy_trylock_atomic() 328 requeue_pi_wake_futex(top_waiter, key2, hb2); in futex_proxy_trylock_atomic() 331 futex_requeue_pi_complete(top_waiter, ret); in futex_proxy_trylock_atomic()
|
D | pi.c | 522 struct futex_q *top_waiter; in futex_lock_pi_atomic() local 548 top_waiter = futex_top_waiter(hb, key); in futex_lock_pi_atomic() 549 if (top_waiter) in futex_lock_pi_atomic() 550 return attach_to_pi_state(uaddr, uval, top_waiter->pi_state, ps); in futex_lock_pi_atomic() 615 struct rt_mutex_waiter *top_waiter; in wake_futex_pi() local 622 top_waiter = rt_mutex_top_waiter(&pi_state->pi_mutex); in wake_futex_pi() 623 if (WARN_ON_ONCE(!top_waiter)) { in wake_futex_pi() 636 new_owner = top_waiter->task; in wake_futex_pi() 1105 struct futex_q *top_waiter; in futex_unlock_pi() local 1132 top_waiter = futex_top_waiter(hb, &key); in futex_unlock_pi() [all …]
|
/linux-6.1.9/kernel/locking/ |
D | rtmutex.c | 386 struct rt_mutex_waiter *top_waiter) in rt_mutex_steal() argument 388 if (rt_mutex_waiter_less(waiter, top_waiter)) in rt_mutex_steal() 399 return rt_mutex_waiter_equal(waiter, top_waiter); in rt_mutex_steal() 620 struct rt_mutex_waiter *waiter, *top_waiter = orig_waiter; in rt_mutex_adjust_prio_chain() local 735 if (top_waiter) { in rt_mutex_adjust_prio_chain() 744 if (top_waiter != task_top_pi_waiter(task)) { in rt_mutex_adjust_prio_chain() 845 top_waiter = rt_mutex_top_waiter(lock); in rt_mutex_adjust_prio_chain() 963 top_waiter = rt_mutex_top_waiter(lock); in rt_mutex_adjust_prio_chain() 984 if (!detect_deadlock && waiter != top_waiter) in rt_mutex_adjust_prio_chain() 1044 struct rt_mutex_waiter *top_waiter = rt_mutex_top_waiter(lock); in try_to_take_rt_mutex() local [all …]
|
/linux-6.1.9/Documentation/locking/ |
D | rt-mutex.rst | 76 that anymore. The pending owner happens to be the top_waiter of a lock
|
D | rt-mutex-design.rst | 459 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
|