| /linux/kernel/locking/ |
| H A D | rtmutex.c | 385 lockdep_assert_held(&task->pi_lock); in waiter_clone_prio() 518 lockdep_assert_held(&task->pi_lock); in rt_mutex_enqueue_pi() 526 lockdep_assert_held(&task->pi_lock); in rt_mutex_dequeue_pi() 542 lockdep_assert_held(&p->pi_lock); in rt_mutex_adjust_prio() 624 * we dropped its pi_lock. Is never dereferenced, only used for 637 * [Pn] task->pi_lock held 643 * task->pi_lock 659 * [1] lock(task->pi_lock); [R] acquire [P1] 664 * unlock(task->pi_lock); release [P1] 669 * [8] unlock(task->pi_lock); releas [all...] |
| H A D | rtmutex_api.c | 508 raw_spin_lock_irqsave(&task->pi_lock, flags); 512 raw_spin_unlock_irqrestore(&task->pi_lock, flags); in rt_mutex_debug_task_free() 516 raw_spin_unlock_irqrestore(&task->pi_lock, flags);
|
| /linux/kernel/futex/ |
| H A D | pi.c | 54 raw_spin_lock(&old_owner->pi_lock); in pi_state_update_owner() 57 raw_spin_unlock(&old_owner->pi_lock); in pi_state_update_owner() 61 raw_spin_lock(&new_owner->pi_lock); in pi_state_update_owner() 65 raw_spin_unlock(&new_owner->pi_lock); in pi_state_update_owner() 180 * p->pi_lock: 194 * p->pi_lock 440 * in futex_exit_release(), we do this protected by p->pi_lock: in attach_to_pi_owner() 442 raw_spin_lock_irq(&p->pi_lock); in attach_to_pi_owner() 451 raw_spin_unlock_irq(&p->pi_lock); in attach_to_pi_owner() 469 raw_spin_unlock_irq(&p->pi_lock); in attach_to_pi_owner() [all...] |
| H A D | core.c | 1322 * below. The hb pointer is acquired under the pi_lock so we can't block 1332 raw_spin_lock_irq(&curr->pi_lock); in exit_pi_state_list() 1352 raw_spin_unlock_irq(&curr->pi_lock); in exit_pi_state_list() 1354 raw_spin_lock_irq(&curr->pi_lock); in exit_pi_state_list() 1357 raw_spin_unlock_irq(&curr->pi_lock); in exit_pi_state_list() 1361 raw_spin_lock(&curr->pi_lock); in exit_pi_state_list() 1367 /* retain curr->pi_lock for the loop invariant */ in exit_pi_state_list() 1379 raw_spin_unlock(&curr->pi_lock); in exit_pi_state_list() 1387 raw_spin_lock_irq(&curr->pi_lock); in exit_pi_state_list() 1389 raw_spin_unlock_irq(&curr->pi_lock); in exit_pi_state_list() [all...] |
| /linux/kernel/sched/ |
| H A D | core_sched.c | 105 raw_spin_lock_irqsave(&p->pi_lock, flags); in sched_core_clone_cookie() 107 raw_spin_unlock_irqrestore(&p->pi_lock, flags); in sched_core_clone_cookie()
|
| H A D | core.c | 561 * p->pi_lock 586 * both p->pi_lock and rq->lock. As a consequence the state they change is 603 * try_to_wake_up(). This latter uses p->pi_lock to serialize against 640 * - for try_to_wake_up(), called under p->pi_lock: 736 lockdep_assert_held(&p->pi_lock); 753 * task_rq_lock - lock p->pi_lock and lock the rq @p resides on. in _task_rq_lock() 760 raw_spin_lock_irqsave(&p->pi_lock, rf->flags); in _task_rq_lock() 785 raw_spin_unlock_irqrestore(&p->pi_lock, rf->flags); 1659 lockdep_assert_held(&p->pi_lock); in uclamp_update_util_min_rt_default() 2162 raw_spin_lock_irq(&p->pi_lock); in enqueue_task() [all...] |
| H A D | ext_internal.h | 1397 lockdep_is_held(&p->pi_lock) || in scx_task_sched() 1464 lockdep_is_held(&p->pi_lock) || in scx_task_sched()
|
| H A D | ext_idle.c | 922 * lock or @p's pi_lock. Three cases: in select_cpu_from_kfunc() 925 * task's pi_lock; the wake-up task is recorded in kf_tasks[0] in select_cpu_from_kfunc() 929 * nothing held, take pi_lock ourselves. in select_cpu_from_kfunc() 937 lockdep_assert_held(&p->pi_lock); in select_cpu_from_kfunc() 942 raw_spin_lock_irqsave(&p->pi_lock, irq_flags); in select_cpu_from_kfunc() 964 raw_spin_unlock_irqrestore(&p->pi_lock, irq_flags); in select_cpu_from_kfunc() 1485 * contexts where @p's pi_lock state is unknown. Keep them out of
|
| H A D | syscalls.c | 1292 guard(raw_spinlock_irqsave)(&p->pi_lock); in sched_getaffinity() 1416 scoped_guard (raw_spinlock_irqsave, &p->pi_lock) { in yield_to()
|
| H A D | sched.h | 1944 __acquires(&p->pi_lock) __acquires_ret; 1956 __releases(__rq_lockp(rq), &p->pi_lock) in rq_lock_irqsave() 1959 raw_spin_unlock_irqrestore(&p->pi_lock, rf->flags); in rq_lock_irq() 1966 DECLARE_LOCK_GUARD_1_ATTRS(task_rq_lock, __acquires(_T->pi_lock), __releases((*(struct task_struct **)_T)->pi_lock)) in rq_lock() 2289 * holding both task_struct::pi_lock and rq::lock. in set_task_rq() 2645 * select_task_rq: p->pi_lock 2646 * sched_exec: p->pi_lock 2651 * set_task_cpu: p->pi_lock || rq->lock (ttwu like) 2673 * push_cpu_stop: p->pi_lock [all...] |
| H A D | deadline.c | 2665 * from try_to_wake_up(). Hence, p->pi_lock is locked, but in task_tick_dl() 3429 raw_spin_lock_irqsave(&p->pi_lock, rf.flags); 3431 raw_spin_unlock_irqrestore(&p->pi_lock, rf.flags); 3445 raw_spin_unlock_irqrestore(&p->pi_lock, rf.flags);
|
| H A D | ext.c | 511 * pi_lock held by try_to_wake_up() with rq tracking via scx_rq.in_select_cpu. 3677 lockdep_assert_held(&p->pi_lock); in __scx_disable_and_exit_task() 3709 lockdep_assert_held(&p->pi_lock); in scx_sub_init_cancel_task()
|
| H A D | fair.c | 5051 * caller only guarantees p->pi_lock is held; no other assumptions, in cfs_rq_runnable_avg() 9557 lockdep_assert_held(&p->pi_lock); 9614 * previous CPU. The caller guarantees p->pi_lock or task_rq(p)->lock is held. in task_hot()
|
| /linux/include/linux/ |
| H A D | sched.h | 264 raw_spin_lock_irqsave(¤t->pi_lock, flags); \ 268 raw_spin_unlock_irqrestore(¤t->pi_lock, flags); \ 277 * serialized by task_struct::pi_lock against try_to_wake_up(). Any non RT 299 raw_spin_lock(¤t->pi_lock); \ 304 raw_spin_unlock(¤t->pi_lock); \ 310 raw_spin_lock(¤t->pi_lock); \ 315 raw_spin_unlock(¤t->pi_lock); \ 1239 raw_spinlock_t pi_lock; 1246 /* Updated under owner's pi_lock and rq lock */ 1231 raw_spinlock_t pi_lock; global() member
|
| /linux/kernel/trace/ |
| H A D | trace_osnoise.c | 1706 raw_spin_lock_irqsave(¤t->pi_lock, flags); in osnoise_main() 1708 raw_spin_unlock_irqrestore(¤t->pi_lock, flags); in osnoise_main() 1909 raw_spin_lock_irqsave(¤t->pi_lock, flags); in timerlat_main() 1911 raw_spin_unlock_irqrestore(¤t->pi_lock, flags); in timerlat_main()
|
| /linux/Documentation/locking/ |
| H A D | rt-mutex-design.rst | 220 called pi_lock. This lock may also be taken in interrupt context, so when 221 locking the pi_lock, interrupts must be disabled. 543 On the wake up code, the pi_lock of the current owner is taken. The top 548 Finally we unlock the pi_lock of the pending owner and wake it up.
|
| /linux/kernel/ |
| H A D | kthread.c | 573 scoped_guard (raw_spinlock_irqsave, &p->pi_lock) in __kthread_bind_mask() 867 scoped_guard (raw_spinlock_irqsave, &p->pi_lock) in kthread_affine_preferred()
|
| H A D | fork.c | 1813 raw_spin_lock_init(&p->pi_lock); in init_task_pid()
|