Function report

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:kernel\rcu\srcutree.c Create Date:2022-07-28 10:19:02
Last Modify:2020-03-12 14:18:49 Copyright©Brick
home page Tree
Annotation kernel can get tool activityDownload SCCTChinese

Name:srcu_invoke_callbacks

Proto:static void srcu_invoke_callbacks(struct work_struct *work)

Type:void

Parameter:

TypeParameterName
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  If srcu_cblist_invoking || Not Does the specified rcu_segcblist structure contain callbacks that* are ready to be invoked? Then
1174  spin_unlock_irq_rcu_node(sdp)
1175  Return
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  When rhp != NULL cycle
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  If more Then Schedule callback invocation for the specified srcu_data structure,* if possible, on the corresponding CPU.