void rcu_read_lock (); void rcu_read_unlock (); typeof(ptr) rcu_assign_pointer (ptr, val); typeof(ptr) rcu_dereference (ptr); void synchronize_rcu ();
readers access last consistent version
new version hidden while inconsistent
writer atomically installs new version
writer releases old version when no old version reader exists