Function report |
Source Code:kernel\rcu\rcu_segcblist.c |
Create Date:2022-07-28 10:29:35 |
Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
home page | Tree |
Annotation kernel can get tool activity | Download SCCT | Chinese |
Name:Advance the callbacks in the specified rcu_segcblist structure based* on the current value passed in for the grace-period counter.
Proto:void rcu_segcblist_advance(struct rcu_segcblist *rsclp, unsigned long seq)
Type:void
Parameter:
Type | Parameter | Name |
---|---|---|
struct rcu_segcblist * | rsclp | |
unsigned long | seq |
415 | WARN_ON_ONCE(!Is the specified rcu_segcblist enabled, for example, not corresponding* to an offline CPU?) |
416 | 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 |
423 | When i < RCU_NEXT_TAIL cycle |
424 | If ULONG_CMP_LT(seq, gp_seq[i]) Then Break |
426 | WRITE_ONCE(tails[Also RCU_WAIT head. ], tails[i]) |
430 | If i == Also RCU_NEXT_READY head. Then Return |
434 | When j < i cycle WRITE_ONCE(tails[j], tails[Also RCU_WAIT head. ]) |
443 | When i < RCU_NEXT_TAIL cycle |
444 | If tails[j] == tails[RCU_NEXT_TAIL] Then Break |
446 | WRITE_ONCE(tails[j], tails[i]) |
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_advance_cbs | Move any callbacks whose grace period has completed to the* RCU_DONE_TAIL sublist, then compact the remaining sublists and* assign ->gp_seq numbers to any callbacks in the RCU_NEXT_TAIL* sublist. This function is idempotent, so it does not hurt to |
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 |