<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head><title>A Tour Through TREE_RCU's Data Structures [LWN.net]</title><metaHTTP-EQUIV="Content-Type"CONTENT="text/html; charset=iso-8859-1"><p>December 18, 2016</p><p>This article was contributed by Paul E. McKenney</p><h3>Introduction</h3>
This document describes RCU's major data structures and their relationship
to each other.
<ol><li><ahref="#Data-Structure Relationships">
Data-Structure Relationships</a><li><ahref="#The rcu_state Structure">
The <tt>rcu_state</tt> Structure</a><li><ahref="#The rcu_node Structure">
The <tt>rcu_node</tt> Structure</a><li><ahref="#The rcu_segcblist Structure">
The <tt>rcu_segcblist</tt> Structure</a><li><ahref="#The rcu_data Structure">
The <tt>rcu_data</tt> Structure</a><li><ahref="#The rcu_dynticks Structure">
The <tt>rcu_dynticks</tt> Structure</a><li><ahref="#The rcu_head Structure">
The <tt>rcu_head</tt> Structure</a><li><ahref="#RCU-Specific Fields in the task_struct Structure">
RCU-Specific Fields in the <tt>task_struct</tt> Structure</a><li><ahref="#Accessor Functions">
Accessor Functions</a>