Function report |
Source Code:kernel\rcu\rcu_segcblist.c |
Create Date:2022-07-28 10:29:37 |
| Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
| home page | Tree |
| Annotation kernel can get tool activity | Download SCCT | Chinese |
Name:"Accelerate" callbacks based on more-accurate grace-period information
Proto:bool rcu_segcblist_accelerate(struct rcu_segcblist *rsclp, unsigned long seq)
Type:bool
Parameter:
| Type | Parameter | Name |
|---|---|---|
| struct rcu_segcblist * | rsclp | |
| unsigned long | seq |
| 470 | WARN_ON_ONCE(!Is the specified rcu_segcblist enabled, for example, not corresponding* to an offline CPU?) |
| 471 | If Are all segments following the specified segment of the specified* rcu_segcblist structure empty of callbacks? (The specified* segment might well contain callbacks.) Then Return false |
| 482 | When i > Also RCU_WAIT head. cycle If tails[i] != tails[i - 1] && ULONG_CMP_LT(gp_seq[i], seq) Then |
| 485 | Break |
| 500 | If ++i >= RCU_NEXT_TAIL Then Return false |
| 510 | When i < RCU_NEXT_TAIL cycle |
| 511 | WRITE_ONCE(tails[i], tails[RCU_NEXT_TAIL]) |
| 514 | Return true |
| Name | Describe |
|---|---|
| __call_srcu | Enqueue an SRCU callback on the srcu_data structure associated with* the current CPU and the specified srcu_struct structure, initiating* grace-period processing if it is not already running |
| srcu_invoke_callbacks | |
| rcu_accelerate_cbs | If there is room, assign a ->gp_seq number to any callbacks on this* CPU that have not already been assigned |
| rcu_accelerate_cbs_unlocked | Similar to rcu_accelerate_cbs(), but does not require that the leaf* rcu_node structure's ->lock be held |
| srcu_gp_start | Start an SRCU grace period. |
| Source code conversion tool public plug-in interface | X |
|---|---|
| Support c/c++/esqlc/java Oracle/Informix/Mysql Plug-in can realize: logical Report Code generation and batch code conversion |