From: Mathieu Desnoyers Date: Thu, 15 Sep 2011 14:04:30 +0000 (-0400) Subject: Document QSBR interaction with mutexes X-Git-Tag: v0.6.5~22 X-Git-Url: https://git.lttng.org./?a=commitdiff_plain;h=cc558521e7bc8767bc78c93436cd4af3c6c84edd;p=userspace-rcu.git Document QSBR interaction with mutexes Signed-off-by: Mathieu Desnoyers --- diff --git a/README b/README index 1e76f2d..e3800fa 100644 --- a/README +++ b/README @@ -187,6 +187,15 @@ Interaction with mutexes mutex in its dependency chain) should not be acquired from within a RCU read-side critical section. + This is especially important to understand in the context of the + QSBR flavor: a registered reader thread being "online" by + default should be considered as within a RCU read-side critical + section unless explicitly put "offline". Therefore, if + synchronize_rcu() is called with a mutex held, this mutex, as + well as any mutex which has this mutex in its dependency chain + should only be taken when the RCU reader thread is "offline" + (this can be performed by calling rcu_thread_offline()). + Usage of DEBUG_RCU DEBUG_RCU is used to add internal debugging self-checks to the