rt_mutex_start_proxy_lock(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

✨ 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-initialized rt_mutex_waiter, already dressed and ready to queue
  • task β€” 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 lock
  • 1 β€” acquired the lock for task, caller should wake it up
  • <0 β€” error 😭

🌈 SEE ALSO 🌈

Kernel file ./kernel/locking/rtmutex_api.c


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