An RCU example Step 1: The initial data structure Contains a pointer to something interesting Read-only users have free access No locks required Step 2: Something changes The new structure is added Pointer changed immediately Prior users still use old copy Step 3: No more users of old copy It can be recycled Data structure update is complete