函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:kernel\rcu\srcutree.c Create Date:2022-07-27 11:19:22
Last Modify:2020-03-12 14:18:49 Copyright©Brick
首页 函数Tree
注解内核,赢得工具下载SCCTEnglish

函数名称:srcu_invoke_callbacks

函数原型:static void srcu_invoke_callbacks(struct work_struct *work)

返回类型:void

参数:

类型参数名称
struct work_struct *work
1165  sdp等于container_of - cast a member of a structure out to the containing structure*@ptr: the pointer to the member.*@type: the type of the container struct this is embedded in.*@member: the name of the member within the struct.(work, structsrcu_data, work)
1167  ssp等于ssp
1168  rcu_cblist_init( & ready_cbs)
1169  spin_lock_irq_rcu_node(sdp)
1170  Advance the callbacks in the specified rcu_segcblist structure based* on the current value passed in for the grace-period counter.
1172  如果srcu_cblist_invoking或非Does the specified rcu_segcblist structure contain callbacks that* are ready to be invoked?
1174  spin_unlock_irq_rcu_node(sdp)
1175  返回
1179  srcu_cblist_invoking = true
1180  rcu_segcblist_extract_done_cbs( & srcu_cblist, & ready_cbs)
1181  spin_unlock_irq_rcu_node(sdp)
1182  rhp等于rcu_cblist_dequeue( & ready_cbs)
1183 rhp != NULL循环
1184  debug_rcu_head_unqueue(rhp)
1185  local_bh_disable()
1186  func(rhp)
1187  local_bh_enable()
1194  spin_lock_irq_rcu_node(sdp)
1195  rcu_segcblist_insert_count( & srcu_cblist, & ready_cbs)
1196  "Accelerate" callbacks based on more-accurate grace-period information
1198  srcu_cblist_invoking = false
1199  more等于Does the specified rcu_segcblist structure contain callbacks that* are ready to be invoked?
1200  spin_unlock_irq_rcu_node(sdp)
1201  如果moreSchedule callback invocation for the specified srcu_data structure,* if possible, on the corresponding CPU.