Function report

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:kernel\locking\rtmutex.c Create Date:2022-07-28 09:52:01
Last Modify:2020-03-17 14:26:38 Copyright©Brick
home page Tree
Annotation kernel can get tool activityDownload SCCTChinese

Name:rt_mutex_enqueue_pi

Proto:static void rt_mutex_enqueue_pi(struct task_struct *task, struct rt_mutex_waiter *waiter)

Type:void

Parameter:

TypeParameterName
struct task_struct *task
struct rt_mutex_waiter *waiter
308  link = rb_node
309  struct rb_node * parent = NULL
311  bool leftmost = true
313  When link cycle
314  parent = link
315  entry = rb_entry(parent, structrt_mutex_waiter, pi_tree_entry)
317  link = rb_left
318  Else
319  link = rb_right
320  leftmost = false
324  rb_link_node( & pi_tree_entry, parent, link)
325  rb_insert_color_cached( & pi_tree_entry, & pi_waiters, leftmost)
Caller
NameDescribe
rt_mutex_adjust_prio_chainAdjust the priority chain
try_to_take_rt_mutexTry to take an rt-mutex* Must be called with lock->wait_lock held and interrupts disabled*@lock: The lock to be acquired
task_blocks_on_rt_mutexTask blocks on lock.* Prepare waiter and propagate pi chain* This must be called with lock->wait_lock held and interrupts disabled
remove_waiterRemove a waiter from a lock and give up* Must be called with lock->wait_lock held and interrupts disabled. I must* have just failed to try_to_take_rt_mutex().