RCU - read side The basic RCU read-side interface is: #include struct my_stuff *stuff; rcu_read_lock(); stuff = find_the_stuff(...); do_something_with(stuff); /* Everything here is atomic */ rcu_read_unlock(); Some problems: Preemption is disabled No indication of what is being protected