rcu_stateRegular
4.4: ✅struct rcu_state {
struct rcu_node node[5];
struct rcu_node * level[3];
u8 flavor_mask;
struct rcu_data *rda;
call_rcu_func_t call;
int ncpus;
u8 boost;
long unsigned int gpnum;
long unsigned int completed;
struct task_struct *gp_kthread;
wait_queue_head_t gp_wq;
short int gp_flags;
short int gp_state;
raw_spinlock_t orphan_lock;
struct callback_head *orphan_nxtlist;
struct callback_head **orphan_nxttail;
struct callback_head *orphan_donelist;
struct callback_head **orphan_donetail;
long int qlen_lazy;
long int qlen;
struct mutex barrier_mutex;
atomic_t barrier_cpu_count;
struct completion barrier_completion;
long unsigned int barrier_sequence;
long unsigned int expedited_sequence;
atomic_long_t expedited_workdone0;
atomic_long_t expedited_workdone1;
atomic_long_t expedited_workdone2;
atomic_long_t expedited_workdone3;
atomic_long_t expedited_normal;
atomic_t expedited_need_qs;
wait_queue_head_t expedited_wq;
int ncpus_snap;
long unsigned int jiffies_force_qs;
long unsigned int n_force_qs;
long unsigned int n_force_qs_lh;
long unsigned int n_force_qs_ngp;
long unsigned int gp_start;
long unsigned int gp_activity;
long unsigned int jiffies_stall;
long unsigned int jiffies_resched;
long unsigned int n_force_qs_gpstart;
long unsigned int gp_max;
const char *name;
char abbr;
struct list_head flavors;
};
4.8: ✅struct rcu_state {
struct rcu_node node[5];
struct rcu_node * level[3];
u8 flavor_mask;
struct rcu_data *rda;
call_rcu_func_t call;
int ncpus;
u8 boost;
long unsigned int gpnum;
long unsigned int completed;
struct task_struct *gp_kthread;
struct swait_queue_head gp_wq;
short int gp_flags;
short int gp_state;
raw_spinlock_t orphan_lock;
struct callback_head *orphan_nxtlist;
struct callback_head **orphan_nxttail;
struct callback_head *orphan_donelist;
struct callback_head **orphan_donetail;
long int qlen_lazy;
long int qlen;
struct mutex barrier_mutex;
atomic_t barrier_cpu_count;
struct completion barrier_completion;
long unsigned int barrier_sequence;
struct mutex exp_mutex;
struct mutex exp_wake_mutex;
long unsigned int expedited_sequence;
atomic_long_t expedited_normal;
atomic_t expedited_need_qs;
struct swait_queue_head expedited_wq;
int ncpus_snap;
long unsigned int jiffies_force_qs;
long unsigned int jiffies_kick_kthreads;
long unsigned int n_force_qs;
long unsigned int n_force_qs_lh;
long unsigned int n_force_qs_ngp;
long unsigned int gp_start;
long unsigned int gp_activity;
long unsigned int jiffies_stall;
long unsigned int jiffies_resched;
long unsigned int n_force_qs_gpstart;
long unsigned int gp_max;
const char *name;
char abbr;
struct list_head flavors;
};
4.10: ✅struct rcu_state {
struct rcu_node node[131];
struct rcu_node * level[4];
u8 flavor_mask;
struct rcu_data *rda;
call_rcu_func_t call;
int ncpus;
u8 boost;
long unsigned int gpnum;
long unsigned int completed;
struct task_struct *gp_kthread;
struct swait_queue_head gp_wq;
short int gp_flags;
short int gp_state;
raw_spinlock_t orphan_lock;
struct callback_head *orphan_nxtlist;
struct callback_head **orphan_nxttail;
struct callback_head *orphan_donelist;
struct callback_head **orphan_donetail;
long int qlen_lazy;
long int qlen;
struct mutex barrier_mutex;
atomic_t barrier_cpu_count;
struct completion barrier_completion;
long unsigned int barrier_sequence;
struct mutex exp_mutex;
struct mutex exp_wake_mutex;
long unsigned int expedited_sequence;
atomic_long_t expedited_normal;
atomic_t expedited_need_qs;
struct swait_queue_head expedited_wq;
int ncpus_snap;
long unsigned int jiffies_force_qs;
long unsigned int jiffies_kick_kthreads;
long unsigned int n_force_qs;
long unsigned int n_force_qs_lh;
long unsigned int n_force_qs_ngp;
long unsigned int gp_start;
long unsigned int gp_activity;
long unsigned int jiffies_stall;
long unsigned int jiffies_resched;
long unsigned int n_force_qs_gpstart;
long unsigned int gp_max;
const char *name;
char abbr;
struct list_head flavors;
};
4.13: ✅struct rcu_state {
struct rcu_node node[521];
struct rcu_node * level[4];
struct rcu_data *rda;
call_rcu_func_t call;
int ncpus;
u8 boost;
long unsigned int gpnum;
long unsigned int completed;
struct task_struct *gp_kthread;
struct swait_queue_head gp_wq;
short int gp_flags;
short int gp_state;
raw_spinlock_t orphan_lock;
struct rcu_cblist orphan_pend;
struct rcu_cblist orphan_done;
struct mutex barrier_mutex;
atomic_t barrier_cpu_count;
struct completion barrier_completion;
long unsigned int barrier_sequence;
struct mutex exp_mutex;
struct mutex exp_wake_mutex;
long unsigned int expedited_sequence;
atomic_t expedited_need_qs;
struct swait_queue_head expedited_wq;
int ncpus_snap;
long unsigned int jiffies_force_qs;
long unsigned int jiffies_kick_kthreads;
long unsigned int n_force_qs;
long unsigned int n_force_qs_lh;
long unsigned int n_force_qs_ngp;
long unsigned int gp_start;
long unsigned int gp_activity;
long unsigned int jiffies_stall;
long unsigned int jiffies_resched;
long unsigned int n_force_qs_gpstart;
long unsigned int gp_max;
const char *name;
char abbr;
struct list_head flavors;
};
4.15: ✅struct rcu_state {
struct rcu_node node[521];
struct rcu_node * level[4];
struct rcu_data *rda;
call_rcu_func_t call;
int ncpus;
u8 boost;
long unsigned int gpnum;
long unsigned int completed;
struct task_struct *gp_kthread;
struct swait_queue_head gp_wq;
short int gp_flags;
short int gp_state;
struct mutex barrier_mutex;
atomic_t barrier_cpu_count;
struct completion barrier_completion;
long unsigned int barrier_sequence;
struct mutex exp_mutex;
struct mutex exp_wake_mutex;
long unsigned int expedited_sequence;
atomic_t expedited_need_qs;
struct swait_queue_head expedited_wq;
int ncpus_snap;
long unsigned int jiffies_force_qs;
long unsigned int jiffies_kick_kthreads;
long unsigned int n_force_qs;
long unsigned int n_force_qs_lh;
long unsigned int n_force_qs_ngp;
long unsigned int gp_start;
long unsigned int gp_activity;
long unsigned int jiffies_stall;
long unsigned int jiffies_resched;
long unsigned int n_force_qs_gpstart;
long unsigned int gp_max;
const char *name;
char abbr;
struct list_head flavors;
};
4.18: ✅struct rcu_state {
struct rcu_node node[521];
struct rcu_node * level[4];
struct rcu_data *rda;
call_rcu_func_t call;
int ncpus;
u8 boost;
long unsigned int gpnum;
long unsigned int completed;
struct task_struct *gp_kthread;
struct swait_queue_head gp_wq;
short int gp_flags;
short int gp_state;
struct mutex barrier_mutex;
atomic_t barrier_cpu_count;
struct completion barrier_completion;
long unsigned int barrier_sequence;
struct mutex exp_mutex;
struct mutex exp_wake_mutex;
long unsigned int expedited_sequence;
atomic_t expedited_need_qs;
struct swait_queue_head expedited_wq;
int ncpus_snap;
long unsigned int jiffies_force_qs;
long unsigned int jiffies_kick_kthreads;
long unsigned int n_force_qs;
long unsigned int gp_start;
long unsigned int gp_activity;
long unsigned int jiffies_stall;
long unsigned int jiffies_resched;
long unsigned int n_force_qs_gpstart;
long unsigned int gp_max;
const char *name;
char abbr;
struct list_head flavors;
};
5.0: ✅struct rcu_state {
struct rcu_node node[521];
struct rcu_node * level[4];
int ncpus;
u8 boost;
long unsigned int gp_seq;
struct task_struct *gp_kthread;
struct swait_queue_head gp_wq;
short int gp_flags;
short int gp_state;
struct mutex barrier_mutex;
atomic_t barrier_cpu_count;
struct completion barrier_completion;
long unsigned int barrier_sequence;
struct mutex exp_mutex;
struct mutex exp_wake_mutex;
long unsigned int expedited_sequence;
atomic_t expedited_need_qs;
struct swait_queue_head expedited_wq;
int ncpus_snap;
long unsigned int jiffies_force_qs;
long unsigned int jiffies_kick_kthreads;
long unsigned int n_force_qs;
long unsigned int gp_start;
long unsigned int gp_end;
long unsigned int gp_activity;
long unsigned int gp_req_activity;
long unsigned int jiffies_stall;
long unsigned int jiffies_resched;
long unsigned int n_force_qs_gpstart;
long unsigned int gp_max;
const char *name;
char abbr;
raw_spinlock_t ofl_lock;
};
5.3: ✅struct rcu_state {
struct rcu_node node[521];
struct rcu_node * level[4];
int ncpus;
u8 boost;
long unsigned int gp_seq;
struct task_struct *gp_kthread;
struct swait_queue_head gp_wq;
short int gp_flags;
short int gp_state;
long unsigned int gp_wake_time;
long unsigned int gp_wake_seq;
struct mutex barrier_mutex;
atomic_t barrier_cpu_count;
struct completion barrier_completion;
long unsigned int barrier_sequence;
struct mutex exp_mutex;
struct mutex exp_wake_mutex;
long unsigned int expedited_sequence;
atomic_t expedited_need_qs;
struct swait_queue_head expedited_wq;
int ncpus_snap;
long unsigned int jiffies_force_qs;
long unsigned int jiffies_kick_kthreads;
long unsigned int n_force_qs;
long unsigned int gp_start;
long unsigned int gp_end;
long unsigned int gp_activity;
long unsigned int gp_req_activity;
long unsigned int jiffies_stall;
long unsigned int jiffies_resched;
long unsigned int n_force_qs_gpstart;
long unsigned int gp_max;
const char *name;
char abbr;
raw_spinlock_t ofl_lock;
};
5.4: ✅struct rcu_state {
struct rcu_node node[521];
struct rcu_node * level[4];
int ncpus;
u8 boost;
long unsigned int gp_seq;
struct task_struct *gp_kthread;
struct swait_queue_head gp_wq;
short int gp_flags;
short int gp_state;
long unsigned int gp_wake_time;
long unsigned int gp_wake_seq;
struct mutex barrier_mutex;
atomic_t barrier_cpu_count;
struct completion barrier_completion;
long unsigned int barrier_sequence;
struct mutex exp_mutex;
struct mutex exp_wake_mutex;
long unsigned int expedited_sequence;
atomic_t expedited_need_qs;
struct swait_queue_head expedited_wq;
int ncpus_snap;
long unsigned int jiffies_force_qs;
long unsigned int jiffies_kick_kthreads;
long unsigned int n_force_qs;
long unsigned int gp_start;
long unsigned int gp_end;
long unsigned int gp_activity;
long unsigned int gp_req_activity;
long unsigned int jiffies_stall;
long unsigned int jiffies_resched;
long unsigned int n_force_qs_gpstart;
long unsigned int gp_max;
const char *name;
char abbr;
raw_spinlock_t ofl_lock;
};
5.8: ✅struct rcu_state {
struct rcu_node node[521];
struct rcu_node * level[4];
int ncpus;
u8 boost;
long unsigned int gp_seq;
struct task_struct *gp_kthread;
struct swait_queue_head gp_wq;
short int gp_flags;
short int gp_state;
long unsigned int gp_wake_time;
long unsigned int gp_wake_seq;
struct mutex barrier_mutex;
atomic_t barrier_cpu_count;
struct completion barrier_completion;
long unsigned int barrier_sequence;
struct mutex exp_mutex;
struct mutex exp_wake_mutex;
long unsigned int expedited_sequence;
atomic_t expedited_need_qs;
struct swait_queue_head expedited_wq;
int ncpus_snap;
u8 cbovld;
u8 cbovldnext;
long unsigned int jiffies_force_qs;
long unsigned int jiffies_kick_kthreads;
long unsigned int n_force_qs;
long unsigned int gp_start;
long unsigned int gp_end;
long unsigned int gp_activity;
long unsigned int gp_req_activity;
long unsigned int jiffies_stall;
long unsigned int jiffies_resched;
long unsigned int n_force_qs_gpstart;
long unsigned int gp_max;
const char *name;
char abbr;
raw_spinlock_t ofl_lock;
};
5.11: ✅struct rcu_state {
struct rcu_node node[521];
struct rcu_node * level[4];
int ncpus;
int n_online_cpus;
u8 boost;
long unsigned int gp_seq;
long unsigned int gp_max;
struct task_struct *gp_kthread;
struct swait_queue_head gp_wq;
short int gp_flags;
short int gp_state;
long unsigned int gp_wake_time;
long unsigned int gp_wake_seq;
struct mutex barrier_mutex;
atomic_t barrier_cpu_count;
struct completion barrier_completion;
long unsigned int barrier_sequence;
struct mutex exp_mutex;
struct mutex exp_wake_mutex;
long unsigned int expedited_sequence;
atomic_t expedited_need_qs;
struct swait_queue_head expedited_wq;
int ncpus_snap;
u8 cbovld;
u8 cbovldnext;
long unsigned int jiffies_force_qs;
long unsigned int jiffies_kick_kthreads;
long unsigned int n_force_qs;
long unsigned int gp_start;
long unsigned int gp_end;
long unsigned int gp_activity;
long unsigned int gp_req_activity;
long unsigned int jiffies_stall;
long unsigned int jiffies_resched;
long unsigned int n_force_qs_gpstart;
const char *name;
char abbr;
raw_spinlock_t ofl_lock;
};
5.13: ✅struct rcu_state {
struct rcu_node node[521];
struct rcu_node * level[4];
int ncpus;
int n_online_cpus;
u8 boost;
long unsigned int gp_seq;
long unsigned int gp_max;
struct task_struct *gp_kthread;
struct swait_queue_head gp_wq;
short int gp_flags;
short int gp_state;
long unsigned int gp_wake_time;
long unsigned int gp_wake_seq;
struct mutex barrier_mutex;
atomic_t barrier_cpu_count;
struct completion barrier_completion;
long unsigned int barrier_sequence;
struct mutex exp_mutex;
struct mutex exp_wake_mutex;
long unsigned int expedited_sequence;
atomic_t expedited_need_qs;
struct swait_queue_head expedited_wq;
int ncpus_snap;
u8 cbovld;
u8 cbovldnext;
long unsigned int jiffies_force_qs;
long unsigned int jiffies_kick_kthreads;
long unsigned int n_force_qs;
long unsigned int gp_start;
long unsigned int gp_end;
long unsigned int gp_activity;
long unsigned int gp_req_activity;
long unsigned int jiffies_stall;
long unsigned int jiffies_resched;
long unsigned int n_force_qs_gpstart;
const char *name;
char abbr;
raw_spinlock_t ofl_lock;
};
5.15: ✅struct rcu_state {
struct rcu_node node[521];
struct rcu_node * level[4];
int ncpus;
int n_online_cpus;
u8 boost;
long unsigned int gp_seq;
long unsigned int gp_max;
struct task_struct *gp_kthread;
struct swait_queue_head gp_wq;
short int gp_flags;
short int gp_state;
long unsigned int gp_wake_time;
long unsigned int gp_wake_seq;
struct mutex barrier_mutex;
atomic_t barrier_cpu_count;
struct completion barrier_completion;
long unsigned int barrier_sequence;
struct mutex exp_mutex;
struct mutex exp_wake_mutex;
long unsigned int expedited_sequence;
atomic_t expedited_need_qs;
struct swait_queue_head expedited_wq;
int ncpus_snap;
u8 cbovld;
u8 cbovldnext;
long unsigned int jiffies_force_qs;
long unsigned int jiffies_kick_kthreads;
long unsigned int n_force_qs;
long unsigned int gp_start;
long unsigned int gp_end;
long unsigned int gp_activity;
long unsigned int gp_req_activity;
long unsigned int jiffies_stall;
long unsigned int jiffies_resched;
long unsigned int n_force_qs_gpstart;
const char *name;
char abbr;
raw_spinlock_t ofl_lock;
};
5.19: ✅struct rcu_state {
struct rcu_node node[521];
struct rcu_node * level[4];
int ncpus;
int n_online_cpus;
long unsigned int gp_seq;
long unsigned int gp_max;
struct task_struct *gp_kthread;
struct swait_queue_head gp_wq;
short int gp_flags;
short int gp_state;
long unsigned int gp_wake_time;
long unsigned int gp_wake_seq;
struct mutex barrier_mutex;
atomic_t barrier_cpu_count;
struct completion barrier_completion;
long unsigned int barrier_sequence;
raw_spinlock_t barrier_lock;
struct mutex exp_mutex;
struct mutex exp_wake_mutex;
long unsigned int expedited_sequence;
atomic_t expedited_need_qs;
struct swait_queue_head expedited_wq;
int ncpus_snap;
u8 cbovld;
u8 cbovldnext;
long unsigned int jiffies_force_qs;
long unsigned int jiffies_kick_kthreads;
long unsigned int n_force_qs;
long unsigned int gp_start;
long unsigned int gp_end;
long unsigned int gp_activity;
long unsigned int gp_req_activity;
long unsigned int jiffies_stall;
long unsigned int jiffies_resched;
long unsigned int n_force_qs_gpstart;
const char *name;
char abbr;
arch_spinlock_t ofl_lock;
int nocb_is_setup;
};
6.2: ✅struct rcu_state {
struct rcu_node node[521];
struct rcu_node * level[4];
int ncpus;
int n_online_cpus;
long unsigned int gp_seq;
long unsigned int gp_max;
struct task_struct *gp_kthread;
struct swait_queue_head gp_wq;
short int gp_flags;
short int gp_state;
long unsigned int gp_wake_time;
long unsigned int gp_wake_seq;
long unsigned int gp_seq_polled;
long unsigned int gp_seq_polled_snap;
long unsigned int gp_seq_polled_exp_snap;
struct mutex barrier_mutex;
atomic_t barrier_cpu_count;
struct completion barrier_completion;
long unsigned int barrier_sequence;
raw_spinlock_t barrier_lock;
struct mutex exp_mutex;
struct mutex exp_wake_mutex;
long unsigned int expedited_sequence;
atomic_t expedited_need_qs;
struct swait_queue_head expedited_wq;
int ncpus_snap;
u8 cbovld;
u8 cbovldnext;
long unsigned int jiffies_force_qs;
long unsigned int jiffies_kick_kthreads;
long unsigned int n_force_qs;
long unsigned int gp_start;
long unsigned int gp_end;
long unsigned int gp_activity;
long unsigned int gp_req_activity;
long unsigned int jiffies_stall;
long unsigned int jiffies_resched;
long unsigned int n_force_qs_gpstart;
const char *name;
char abbr;
arch_spinlock_t ofl_lock;
int nocb_is_setup;
};
6.5: ✅struct rcu_state {
struct rcu_node node[521];
struct rcu_node * level[4];
int ncpus;
int n_online_cpus;
long unsigned int gp_seq;
long unsigned int gp_max;
struct task_struct *gp_kthread;
struct swait_queue_head gp_wq;
short int gp_flags;
short int gp_state;
long unsigned int gp_wake_time;
long unsigned int gp_wake_seq;
long unsigned int gp_seq_polled;
long unsigned int gp_seq_polled_snap;
long unsigned int gp_seq_polled_exp_snap;
struct mutex barrier_mutex;
atomic_t barrier_cpu_count;
struct completion barrier_completion;
long unsigned int barrier_sequence;
raw_spinlock_t barrier_lock;
struct mutex exp_mutex;
struct mutex exp_wake_mutex;
long unsigned int expedited_sequence;
atomic_t expedited_need_qs;
struct swait_queue_head expedited_wq;
int ncpus_snap;
u8 cbovld;
u8 cbovldnext;
long unsigned int jiffies_force_qs;
long unsigned int jiffies_kick_kthreads;
long unsigned int n_force_qs;
long unsigned int gp_start;
long unsigned int gp_end;
long unsigned int gp_activity;
long unsigned int gp_req_activity;
long unsigned int jiffies_stall;
long unsigned int jiffies_resched;
long unsigned int n_force_qs_gpstart;
const char *name;
char abbr;
arch_spinlock_t ofl_lock;
int nocb_is_setup;
};
6.8: ✅struct rcu_state {
struct rcu_node node[521];
struct rcu_node * level[4];
int ncpus;
int n_online_cpus;
long unsigned int gp_seq;
long unsigned int gp_max;
struct task_struct *gp_kthread;
struct swait_queue_head gp_wq;
short int gp_flags;
short int gp_state;
long unsigned int gp_wake_time;
long unsigned int gp_wake_seq;
long unsigned int gp_seq_polled;
long unsigned int gp_seq_polled_snap;
long unsigned int gp_seq_polled_exp_snap;
struct mutex barrier_mutex;
atomic_t barrier_cpu_count;
struct completion barrier_completion;
long unsigned int barrier_sequence;
raw_spinlock_t barrier_lock;
struct mutex exp_mutex;
struct mutex exp_wake_mutex;
long unsigned int expedited_sequence;
atomic_t expedited_need_qs;
struct swait_queue_head expedited_wq;
int ncpus_snap;
u8 cbovld;
u8 cbovldnext;
long unsigned int jiffies_force_qs;
long unsigned int jiffies_kick_kthreads;
long unsigned int n_force_qs;
long unsigned int gp_start;
long unsigned int gp_end;
long unsigned int gp_activity;
long unsigned int gp_req_activity;
long unsigned int jiffies_stall;
int nr_fqs_jiffies_stall;
long unsigned int jiffies_resched;
long unsigned int n_force_qs_gpstart;
const char *name;
char abbr;
arch_spinlock_t ofl_lock;
int nocb_is_setup;
};
arm64: ✅struct rcu_state {
struct rcu_node node[17];
struct rcu_node * level[3];
int ncpus;
u8 boost;
long unsigned int gp_seq;
struct task_struct *gp_kthread;
struct swait_queue_head gp_wq;
short int gp_flags;
short int gp_state;
long unsigned int gp_wake_time;
long unsigned int gp_wake_seq;
struct mutex barrier_mutex;
atomic_t barrier_cpu_count;
struct completion barrier_completion;
long unsigned int barrier_sequence;
struct mutex exp_mutex;
struct mutex exp_wake_mutex;
long unsigned int expedited_sequence;
atomic_t expedited_need_qs;
struct swait_queue_head expedited_wq;
int ncpus_snap;
long unsigned int jiffies_force_qs;
long unsigned int jiffies_kick_kthreads;
long unsigned int n_force_qs;
long unsigned int gp_start;
long unsigned int gp_end;
long unsigned int gp_activity;
long unsigned int gp_req_activity;
long unsigned int jiffies_stall;
long unsigned int jiffies_resched;
long unsigned int n_force_qs_gpstart;
long unsigned int gp_max;
const char *name;
char abbr;
raw_spinlock_t ofl_lock;
};
armhf: ✅struct rcu_state {
struct rcu_node node[1];
struct rcu_node * level[2];
int ncpus;
u8 boost;
long unsigned int gp_seq;
struct task_struct *gp_kthread;
struct swait_queue_head gp_wq;
short int gp_flags;
short int gp_state;
long unsigned int gp_wake_time;
long unsigned int gp_wake_seq;
struct mutex barrier_mutex;
atomic_t barrier_cpu_count;
struct completion barrier_completion;
long unsigned int barrier_sequence;
struct mutex exp_mutex;
struct mutex exp_wake_mutex;
long unsigned int expedited_sequence;
atomic_t expedited_need_qs;
struct swait_queue_head expedited_wq;
int ncpus_snap;
long unsigned int jiffies_force_qs;
long unsigned int jiffies_kick_kthreads;
long unsigned int n_force_qs;
long unsigned int gp_start;
long unsigned int gp_end;
long unsigned int gp_activity;
long unsigned int gp_req_activity;
long unsigned int jiffies_stall;
long unsigned int jiffies_resched;
long unsigned int n_force_qs_gpstart;
long unsigned int gp_max;
const char *name;
char abbr;
raw_spinlock_t ofl_lock;
};
ppc64el: ✅struct rcu_state {
struct rcu_node node[131];
struct rcu_node * level[4];
int ncpus;
u8 boost;
long unsigned int gp_seq;
struct task_struct *gp_kthread;
struct swait_queue_head gp_wq;
short int gp_flags;
short int gp_state;
long unsigned int gp_wake_time;
long unsigned int gp_wake_seq;
struct mutex barrier_mutex;
atomic_t barrier_cpu_count;
struct completion barrier_completion;
long unsigned int barrier_sequence;
struct mutex exp_mutex;
struct mutex exp_wake_mutex;
long unsigned int expedited_sequence;
atomic_t expedited_need_qs;
struct swait_queue_head expedited_wq;
int ncpus_snap;
long unsigned int jiffies_force_qs;
long unsigned int jiffies_kick_kthreads;
long unsigned int n_force_qs;
long unsigned int gp_start;
long unsigned int gp_end;
long unsigned int gp_activity;
long unsigned int gp_req_activity;
long unsigned int jiffies_stall;
long unsigned int jiffies_resched;
long unsigned int n_force_qs_gpstart;
long unsigned int gp_max;
const char *name;
char abbr;
raw_spinlock_t ofl_lock;
};
riscv64: ✅struct rcu_state {
struct rcu_node node[1];
struct rcu_node * level[2];
int ncpus;
u8 boost;
long unsigned int gp_seq;
struct task_struct *gp_kthread;
struct swait_queue_head gp_wq;
short int gp_flags;
short int gp_state;
long unsigned int gp_wake_time;
long unsigned int gp_wake_seq;
struct mutex barrier_mutex;
atomic_t barrier_cpu_count;
struct completion barrier_completion;
long unsigned int barrier_sequence;
struct mutex exp_mutex;
struct mutex exp_wake_mutex;
long unsigned int expedited_sequence;
atomic_t expedited_need_qs;
struct swait_queue_head expedited_wq;
int ncpus_snap;
long unsigned int jiffies_force_qs;
long unsigned int jiffies_kick_kthreads;
long unsigned int n_force_qs;
long unsigned int gp_start;
long unsigned int gp_end;
long unsigned int gp_activity;
long unsigned int gp_req_activity;
long unsigned int jiffies_stall;
long unsigned int jiffies_resched;
long unsigned int n_force_qs_gpstart;
long unsigned int gp_max;
const char *name;
char abbr;
raw_spinlock_t ofl_lock;
};
aws: ✅struct rcu_state {
struct rcu_node node[521];
struct rcu_node * level[4];
int ncpus;
u8 boost;
long unsigned int gp_seq;
struct task_struct *gp_kthread;
struct swait_queue_head gp_wq;
short int gp_flags;
short int gp_state;
long unsigned int gp_wake_time;
long unsigned int gp_wake_seq;
struct mutex barrier_mutex;
atomic_t barrier_cpu_count;
struct completion barrier_completion;
long unsigned int barrier_sequence;
struct mutex exp_mutex;
struct mutex exp_wake_mutex;
long unsigned int expedited_sequence;
atomic_t expedited_need_qs;
struct swait_queue_head expedited_wq;
int ncpus_snap;
long unsigned int jiffies_force_qs;
long unsigned int jiffies_kick_kthreads;
long unsigned int n_force_qs;
long unsigned int gp_start;
long unsigned int gp_end;
long unsigned int gp_activity;
long unsigned int gp_req_activity;
long unsigned int jiffies_stall;
long unsigned int jiffies_resched;
long unsigned int n_force_qs_gpstart;
long unsigned int gp_max;
const char *name;
char abbr;
raw_spinlock_t ofl_lock;
};
azure: ✅struct rcu_state {
struct rcu_node node[521];
struct rcu_node * level[4];
int ncpus;
u8 boost;
long unsigned int gp_seq;
struct task_struct *gp_kthread;
struct swait_queue_head gp_wq;
short int gp_flags;
short int gp_state;
long unsigned int gp_wake_time;
long unsigned int gp_wake_seq;
struct mutex barrier_mutex;
atomic_t barrier_cpu_count;
struct completion barrier_completion;
long unsigned int barrier_sequence;
struct mutex exp_mutex;
struct mutex exp_wake_mutex;
long unsigned int expedited_sequence;
atomic_t expedited_need_qs;
struct swait_queue_head expedited_wq;
int ncpus_snap;
long unsigned int jiffies_force_qs;
long unsigned int jiffies_kick_kthreads;
long unsigned int n_force_qs;
long unsigned int gp_start;
long unsigned int gp_end;
long unsigned int gp_activity;
long unsigned int gp_req_activity;
long unsigned int jiffies_stall;
long unsigned int jiffies_resched;
long unsigned int n_force_qs_gpstart;
long unsigned int gp_max;
const char *name;
char abbr;
raw_spinlock_t ofl_lock;
};
gcp: ✅struct rcu_state {
struct rcu_node node[521];
struct rcu_node * level[4];
int ncpus;
u8 boost;
long unsigned int gp_seq;
struct task_struct *gp_kthread;
struct swait_queue_head gp_wq;
short int gp_flags;
short int gp_state;
long unsigned int gp_wake_time;
long unsigned int gp_wake_seq;
struct mutex barrier_mutex;
atomic_t barrier_cpu_count;
struct completion barrier_completion;
long unsigned int barrier_sequence;
struct mutex exp_mutex;
struct mutex exp_wake_mutex;
long unsigned int expedited_sequence;
atomic_t expedited_need_qs;
struct swait_queue_head expedited_wq;
int ncpus_snap;
long unsigned int jiffies_force_qs;
long unsigned int jiffies_kick_kthreads;
long unsigned int n_force_qs;
long unsigned int gp_start;
long unsigned int gp_end;
long unsigned int gp_activity;
long unsigned int gp_req_activity;
long unsigned int jiffies_stall;
long unsigned int jiffies_resched;
long unsigned int n_force_qs_gpstart;
long unsigned int gp_max;
const char *name;
char abbr;
raw_spinlock_t ofl_lock;
};
lowlatency: ✅struct rcu_state {
struct rcu_node node[521];
struct rcu_node * level[4];
int ncpus;
u8 boost;
long unsigned int gp_seq;
struct task_struct *gp_kthread;
struct swait_queue_head gp_wq;
short int gp_flags;
short int gp_state;
long unsigned int gp_wake_time;
long unsigned int gp_wake_seq;
struct mutex barrier_mutex;
atomic_t barrier_cpu_count;
struct completion barrier_completion;
long unsigned int barrier_sequence;
struct mutex exp_mutex;
struct mutex exp_wake_mutex;
long unsigned int expedited_sequence;
atomic_t expedited_need_qs;
struct swait_queue_head expedited_wq;
int ncpus_snap;
long unsigned int jiffies_force_qs;
long unsigned int jiffies_kick_kthreads;
long unsigned int n_force_qs;
long unsigned int gp_start;
long unsigned int gp_end;
long unsigned int gp_activity;
long unsigned int gp_req_activity;
long unsigned int jiffies_stall;
long unsigned int jiffies_resched;
long unsigned int n_force_qs_gpstart;
long unsigned int gp_max;
const char *name;
char abbr;
raw_spinlock_t ofl_lock;
};
Regular
4.4 and 4.8 ⚠️struct mutex exp_mutex
struct mutex exp_wake_mutex
long unsigned int jiffies_kick_kthreads
atomic_long_t expedited_workdone0
atomic_long_t expedited_workdone1
atomic_long_t expedited_workdone2
atomic_long_t expedited_workdone3
wait_queue_head_t gp_wq ➡️ struct swait_queue_head gp_wq
wait_queue_head_t expedited_wq ➡️ struct swait_queue_head expedited_wq
4.8 and 4.10 ⚠️struct rcu_node node[5] ➡️ struct rcu_node node[131]
struct rcu_node * level[3] ➡️ struct rcu_node * level[4]
4.10 and 4.13 ⚠️struct rcu_cblist orphan_pend
struct rcu_cblist orphan_done
u8 flavor_mask
struct callback_head *orphan_nxtlist
struct callback_head **orphan_nxttail
struct callback_head *orphan_donelist
struct callback_head **orphan_donetail
long int qlen_lazy
long int qlen
atomic_long_t expedited_normal
struct rcu_node node[131] ➡️ struct rcu_node node[521]
4.13 and 4.15 ⚠️raw_spinlock_t orphan_lock
struct rcu_cblist orphan_pend
struct rcu_cblist orphan_done
4.15 and 4.18 ⚠️long unsigned int n_force_qs_lh
long unsigned int n_force_qs_ngp
4.18 and 5.0 ⚠️long unsigned int gp_seq
long unsigned int gp_end
long unsigned int gp_req_activity
raw_spinlock_t ofl_lock
struct rcu_data *rda
call_rcu_func_t call
long unsigned int gpnum
long unsigned int completed
struct list_head flavors
5.0 and 5.3 ⚠️long unsigned int gp_wake_time
long unsigned int gp_wake_seq
5.3 and 5.4 ✅
5.4 and 5.8 ⚠️u8 cbovld
u8 cbovldnext
5.8 and 5.11 ⚠️int n_online_cpus
5.11 and 5.13 ✅
5.13 and 5.15 ✅
5.15 and 5.19 ⚠️raw_spinlock_t barrier_lock
int nocb_is_setup
u8 boost
raw_spinlock_t ofl_lock ➡️ arch_spinlock_t ofl_lock
5.19 and 6.2 ⚠️long unsigned int gp_seq_polled
long unsigned int gp_seq_polled_snap
long unsigned int gp_seq_polled_exp_snap
6.2 and 6.5 ✅
6.5 and 6.8 ⚠️int nr_fqs_jiffies_stall
amd64 and arm64 ⚠️struct rcu_node node[521] ➡️ struct rcu_node node[17]
struct rcu_node * level[4] ➡️ struct rcu_node * level[3]
amd64 and armhf ⚠️struct rcu_node node[521] ➡️ struct rcu_node node[1]
struct rcu_node * level[4] ➡️ struct rcu_node * level[2]
amd64 and ppc64el ⚠️struct rcu_node node[521] ➡️ struct rcu_node node[131]
amd64 and riscv64 ⚠️struct rcu_node node[521] ➡️ struct rcu_node node[1]
struct rcu_node * level[4] ➡️ struct rcu_node * level[2]
generic and aws ✅
generic and azure ✅
generic and gcp ✅
generic and lowlatency ✅