Fix: urcu-signal: smp_mb_master() needs registry lock
authorMathieu Desnoyers <mathieu.desnoyers@efficios.com>
Fri, 30 Oct 2015 21:11:55 +0000 (17:11 -0400)
committerMathieu Desnoyers <mathieu.desnoyers@efficios.com>
Fri, 30 Oct 2015 21:23:49 +0000 (17:23 -0400)
commit863585dc4239cc61f49850ddd67002618de2322b
tree0d71012400a09f0f8deeaa0a1d96a2b707e17de0
parent7f25db7f8baccdd6a859fdba70f33a38ce90f92c
Fix: urcu-signal: smp_mb_master() needs registry lock

The signal-based urcu flavor calls smp_mb_master() within the wait_gp()
function. Since commit "Fix: deadlock when thread join is issued in
read-side C.S.", wait_gp() is called without the registry lock held.

Ensure that the registry lock is only released around the wait per se,
not around the call to smp_mb_master(), otherwise we end up iterating on
a non-consistent thread registry in smp_mb_master().

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
urcu.c
This page took 0.025211 seconds and 4 git commands to generate.