From: Mathieu Desnoyers Date: Sun, 14 Mar 2010 19:33:51 +0000 (-0400) Subject: urcu: Add extra "engineering safety factor" memory barrier in update_counter_and_wait() X-Git-Tag: v0.4.4~7 X-Git-Url: http://git.liburcu.org/?a=commitdiff_plain;h=935b11ff4cf9053954d21b9d63c4ee367b12a652;hp=935b11ff4cf9053954d21b9d63c4ee367b12a652;p=userspace-rcu.git urcu: Add extra "engineering safety factor" memory barrier in update_counter_and_wait() Even though the memory barriers within update_counter_and_wait() are proven not to be needed in urcu-mb/signal/qsbr implementations, we leave them in place as an engineering safety factor. Basically, we've proven they are not required (formally for urcu-mb and urcu-signal by model checking, less formally for urcu-qsbr by looking at the execution order of concurrent synchronize_rcu() and RCU read-sides with out-of-order load/stores). However, given that on the overall performance impact of synchronize_rcu(), these memory barriers do not add a significant overhead, let's leave them in place with a comment stating that they are not required. Signed-off-by: Mathieu Desnoyers ---