Release Notes: This release includes an overhaul of ck_barrier, ck_spinlock, ck_bytelock, ck_brlock, ck_hp, ck_epoch, ck_rwlock, ck_ring, ck_fifo, and ck_queue for RMO architectures. All users are advised to upgrade. If you are a user of ck_fifo_spsc or ck_bytelock, even on TSO architectures, upgrading is also recommended, due to bugfixes. Some users may see slight performance improvements, and some may see slight performance degradation (primarily with byte lock).
Release Notes: This release includes MingW64 support, SPMC CK_STAILQ with wait-free read-side traversal, and migration of ck_hp to use strict fence semantics when setting hazard pointers. ck_pr and ck_ring documentation has been added in the form of manual pages (which are also available on the Web site).
Release Notes: It is recommended that users of ck_fifo_mpmc who recycle nodes with the help of a freelist upgrade to this version. Partial support for MingW32 has been added, with MingW64 support coming up next. A phase-fair read-write lock reference implementation has been provided, as well as a generalized CK_COHORT interface for implementing lock cohorts with arbitrary lock combinations (which satisfy requirements of cohort locks). New ck_ring functionality has been added which allows atomic ring size fetch and enqueue semantics.
Release Notes: It is recommended that users of ck_ht and ck_hs upgrade to this release for significant performance enhancements. It is recommended that users on RMO or PSO architectures (--memory-model=rmo or on PPC*) upgrade if they rely on ck_rwlock or ck_bytelock. This release includes significant enhancements to the PPC32 port.
Release Notes: This release includes a bugfix to ck_bytelock.h and a bugfix to ck_queue.h. The ck_bytelock bug affects users who downgrade a write acquisition to a read-side acquisition. The ck_queue bug affects users who are using CK_LIST_INSERT_HEAD followed by CK_LIST_REMOVE to non-head elements. This execution sequence causes incorrect removal of nodes. This release also includes improved unit test coverage to x86-32.
Release Notes: This release includes a bugfix to ck_ring_dequeue_spmc for users of versions of GCC greater than 4.2X and users of LLVM-backed compilers, a bugfix to ck_pr_store_double for x86_64 when dealing with constant arguments (caused compilation failures), and rips out ck_backoff_eb.