On Sun, 4 Mar 2012 06:07:37 +0100, David Henningsson <david.henningsson at canonical.com> wrote: > Our flist implementation suffers from the ABA problem > (see http://en.wikipedia.org/wiki/ABA_problem), causing PulseAudio > to crash very rarely, usually inside memblock operations. > By turning stored pointers into stored table indices, we have some > extra bits that we can use to store tag bits, which is a known > workaround for the ABA problem. > > Buglink: https://bugs.launchpad.net/bugs/924416 > Signed-off-by: David Henningsson <david.henningsson at canonical.com> <code removed> After reviewing the patch I have to admit it looks cleaner than my version. As far as I can see it should make the ABA problem highly improbable. At least the patch provides a big improvement over the current implementation. Best regards, Jyri