rt_mutex_start_proxy_lock(9)
β¨ rt_mutex_start_proxy_lock β¨
okay bestie, welcome to the Kernel API Manual entry for rt_mutex_start_proxy_lock β this is the one that gets the lock party started for another task, not you. main character energy is elsewhere, and that's fine π«Ά
πΈ NAME πΈ
rt_mutex_start_proxy_lock β Start lock acquisition for another task
π SYNOPSIS π
int rt_mutex_start_proxy_lock (struct rt_mutex_base *lock , struct
rt_mutex_waiter *waiter , struct task_struct *task );
π ARGUMENTS π
lockβ the rt_mutex to take, aka the thing we're all fighting over πwaiterβ the pre-initializedrt_mutex_waiter, already dressed and ready to queuetaskβ the task to prepare, because we're doing this on their behalf, not ours
π¦ DESCRIPTION π¦
Starts the rt_mutex acquire; it enqueues the waiter and does deadlock detection. It does not wait β see rt_mutex_wait_proxy_lock for that, because waiting is a whole separate vibe and not this function's business, ngl.
Special API call for PI-futex support. iykyk β¨
β NOTE β
unlike __rt_mutex_start_proxy_lock, this one _DOES_ remove the waiter on failure. like, it cleans up after itself, we love an accountable icon π
π₯ RETURN π₯
0β task blocked on lock1β acquired the lock for task, caller should wake it up<0β error π
π SEE ALSO π
Kernel file ./kernel/locking/rtmutex_api.c
rt_mutex_lock_nested(9)rt_mutex_lock(9)rt_mutex_lock_interruptible(9)rt_mutex_lock_killable(9)rt_mutex_trylock(9)rt_mutex_unlock(9)__rt_mutex_futex_unlock(9)__rt_mutex_init(9)rt_mutex_init_proxy_locked(9)rt_mutex_proxy_unlock(9)__rt_mutex_start_proxy_lock(9)rt_mutex_wait_proxy_lock(9)rt_mutex_cleanup_proxy_lock(9)
okay that's the whole page, bestie, slay π this beauty lives under ./kernel/locking and it's dated October 2026, with the header vibe of rt_mutex_start_proxy_lock(9) β go forth and proxy-lock responsibly ππ«Ά
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms