Home
last modified time | relevance | path

Searched refs:pi_state (Results 1 – 6 of 6) sorted by relevance

/linux-6.15/kernel/futex/
H A Dpi.c20 pi_state = kzalloc(sizeof(*pi_state), GFP_KERNEL); in refill_pi_state_cache()
22 if (!pi_state) in refill_pi_state_cache()
40 WARN_ON(!pi_state); in alloc_pi_state()
43 return pi_state; in alloc_pi_state()
80 if (!pi_state) in put_pi_state()
100 kfree(pi_state); in put_pi_state()
301 *ps = pi_state; in attach_to_pi_state()
405 *ps = pi_state; in __attach_to_pi_owner()
674 struct futex_pi_state *pi_state = q->pi_state; in __fixup_pi_state_owner() local
846 struct futex_pi_state *pi_state = q->pi_state; in fixup_pi_state_owner() local
[all …]
H A Drequeue.c123 q->pi_state = pi_state; in futex_requeue_pi_prepare()
489 &key2, &pi_state, in futex_requeue()
590 this->pi_state) { in futex_requeue()
618 get_pi_state(pi_state); in futex_requeue()
627 put_pi_state(pi_state); in futex_requeue()
659 this->pi_state = NULL; in futex_requeue()
660 put_pi_state(pi_state); in futex_requeue()
674 put_pi_state(pi_state); in futex_requeue()
835 if (q.pi_state && (q.pi_state->owner != current)) { in futex_wait_requeue_pi()
842 put_pi_state(q.pi_state); in futex_wait_requeue_pi()
[all …]
H A Dcore.c600 BUG_ON(q->pi_state); in futex_unqueue()
626 BUG_ON(!q->pi_state); in futex_unqueue_pi()
627 put_pi_state(q->pi_state); in futex_unqueue_pi()
628 q->pi_state = NULL; in futex_unqueue_pi()
951 struct futex_pi_state *pi_state; in exit_pi_state_list() local
964 key = pi_state->key; in exit_pi_state_list()
996 put_pi_state(pi_state); in exit_pi_state_list()
1000 WARN_ON(pi_state->owner != curr); in exit_pi_state_list()
1002 list_del_init(&pi_state->list); in exit_pi_state_list()
1003 pi_state->owner = NULL; in exit_pi_state_list()
[all …]
H A Dwaitwake.c112 if (WARN(q->pi_state || q->rt_waiter, "refusing to wake PI futex\n")) in __futex_wake_mark()
183 if (this->pi_state || this->rt_waiter) { in futex_wake()
302 if (this->pi_state || this->rt_waiter) { in futex_wake_op()
316 if (this->pi_state || this->rt_waiter) { in futex_wake_op()
H A Dfutex.h180 struct futex_pi_state *pi_state; member
369 extern void get_pi_state(struct futex_pi_state *pi_state);
370 extern void put_pi_state(struct futex_pi_state *pi_state);
/linux-6.15/Documentation/locking/
H A Dpi-futex.rst95 the futex-queue. The pi_state includes an rt-mutex, which is a PI-aware,
111 pi_state->rt_mutex and thus wakes up any potential waiters.