函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

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

函数名称:Enqueue an SRCU callback on the specified srcu_struct structure,* initiating grace-period processing if it is not already running.

函数原型:void call_srcu(struct srcu_struct *ssp, struct callback_head *rhp, rcu_callback_t func)

返回类型:void

参数:

类型参数名称
struct srcu_struct *ssp
struct callback_head *rhp
rcu_callback_tfunc
163  func等于func
164  next = NULL
165  local_irq_save(flags)
166  Pending callbacks: Tail. 等于rhp
167  Pending callbacks: Tail. 等于next
168  local_irq_restore(flags)
169  如果非READ_ONCE( GP workqueue running? )则
170  如果此条件成立可能性大(为编译器优化)(srcu_init_done)则schedule_work - put work task in global workqueue*@work: job to be done* Returns %false if @work was already on the kernel-global workqueue and* %true otherwise
172  否则如果链表为空添加链表项
调用者
名称描述
synchronize_srcusynchronize_srcu - wait for prior SRCU read-side critical-section completion
srcu_torture_deferred_free
srcu_torture_call
srcu_call_rcu
rcu_free_old_probes