summary |
shortlog |
log |
commit | commitdiff |
tree
raw |
patch |
inline | side by side (from parent 1:
3395d46)
Readers must go offline because they unregister.
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@polymtl.ca>
void rcu_unregister_thread(void)
{
void rcu_unregister_thread(void)
{
+ /*
+ * We have to make the thread offline otherwise we end up dealocking
+ * with a waiting writer.
+ */
+ _rcu_thread_offline();
internal_urcu_lock();
rcu_remove_reader(pthread_self());
internal_urcu_unlock();
internal_urcu_lock();
rcu_remove_reader(pthread_self());
internal_urcu_unlock();