Lock-free linked lists using compare-and-swap | Synapse