

Release Notes: This release implements an improved finer-grained memory barrier interface, and also implementes lighter-weight ck_epoch_synchronize functionality. ck_epoch_synchronize will no longer execute any deferred callbacks (as documented, ck_epoch_barrier must be used). The latter interface plays nicely for integrations that wish to time reclamation overheads.


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.