Lines Matching refs:rcu_ctrlblk
31 struct rcu_ctrlblk { struct
39 static struct rcu_ctrlblk rcu_ctrlblk = { variable
40 .donetail = &rcu_ctrlblk.rcucblist,
41 .curtail = &rcu_ctrlblk.rcucblist,
57 if (rcu_ctrlblk.donetail != rcu_ctrlblk.curtail) { in rcu_qs()
58 rcu_ctrlblk.donetail = rcu_ctrlblk.curtail; in rcu_qs()
61 WRITE_ONCE(rcu_ctrlblk.gp_seq, rcu_ctrlblk.gp_seq + 2); in rcu_qs()
75 } else if (rcu_ctrlblk.donetail != rcu_ctrlblk.curtail) { in rcu_sched_clock_irq()
108 if (rcu_ctrlblk.donetail == &rcu_ctrlblk.rcucblist) { in rcu_process_callbacks()
113 list = rcu_ctrlblk.rcucblist; in rcu_process_callbacks()
114 rcu_ctrlblk.rcucblist = *rcu_ctrlblk.donetail; in rcu_process_callbacks()
115 *rcu_ctrlblk.donetail = NULL; in rcu_process_callbacks()
116 if (rcu_ctrlblk.curtail == rcu_ctrlblk.donetail) in rcu_process_callbacks()
117 rcu_ctrlblk.curtail = &rcu_ctrlblk.rcucblist; in rcu_process_callbacks()
118 rcu_ctrlblk.donetail = &rcu_ctrlblk.rcucblist; in rcu_process_callbacks()
150 WRITE_ONCE(rcu_ctrlblk.gp_seq, rcu_ctrlblk.gp_seq + 2); in synchronize_rcu()
177 *rcu_ctrlblk.curtail = head; in call_rcu()
178 rcu_ctrlblk.curtail = &head->next; in call_rcu()
204 return READ_ONCE(rcu_ctrlblk.gp_seq); in get_state_synchronize_rcu()
231 return oldstate == RCU_GET_STATE_COMPLETED || READ_ONCE(rcu_ctrlblk.gp_seq) != oldstate; in poll_state_synchronize_rcu()
238 return READ_ONCE(rcu_ctrlblk.gp_seq) & 0xffffULL; in rcutorture_gather_gp_seqs()