dwww Home | Show directory contents | Find package

2022-08-18 Userspace RCU 0.13.2
        * Revert "Fix: remove type constness in URCU_FORCE_CAST's C++ version"
        * Fix: futex.h: include headers outside extern C
        * Fix: add missing unused attribute to _rcu_dereference
        * Fix: change method used by _rcu_dereference to strip type constness
        * Fix: remove type constness in URCU_FORCE_CAST's C++ version
        * Move extern "C" down in include/urcu/urcu-bp.h
        * fix: ifdef linux specific cpu count compat
        * Set git-review branch to stable-0.13
        * fix: sysconf(_SC_NPROCESSORS_CONF) can be less than max cpu id
        * Fix: revise obsolete command in README.md
        * Fix: workqueue: remove unused variable "ret"
        * Fix: urcu-qsbr: futex wait: handle spurious futex wakeups
        * Fix: urcu: futex wait: handle spurious futex wakeups
        * Fix: urcu-wait: futex wait: handle spurious futex wakeups
        * Fix: defer_rcu: futex wait: handle spurious futex wakeups
        * Fix: call_rcu: futex wait: handle spurious futex wakeups
        * Fix: workqueue: futex wait: handle spurious futex wakeups
        * Fix: Use %lu rather than %ld to print count

2022-01-05 Userspace RCU 0.13.1
        * fix: properly detect 'cmpxchg' on x86-32
        * fix: use urcu-tls compat with c++ compiler
        * fix: remove autoconf features default value in help message
        * fix: add missing pkgconfig file for memb flavour lib
        * Make temporary variable in _rcu_dereference non-const
        * Fix: x86 and s390: uatomic __hp() macro C++ support
        * Fix: x86 and s390: uatomic __hp() macro clang support
        * Fix: x86 and s390 uatomic: __hp() macro warning with gcc 11
        * Fix: changelog: v0.13.0 was released in 2021

2021-06-03 Userspace RCU 0.13.0
        * Document known ABI issue in README.md
        * Add serialized ABI definition files
        * bump SONAME major to 8
        * Remove all SONAME(6) ABI aliases
        * .gitignore: list ignored Makefiles
        * tests: Add a simple compile test for caa_get_cycles
        * fix: clock_gettime on macOs
        * Fix: rculist header: use parenthesis around macro parameters
        * Fix: rcuhlist header: use parenthesis around macro parameters
        * Fix: hlist header: use parenthesis around macro parameters
        * Fix: list.h: use parenthesis around macro parameters, caa_container_of()
        * Fix: hlist iteration relies on undefined behavior
        * Fix: use __atomic_load() rather than atomic load explicit
        * Fix: use atomic load memory_order_consume for rcu_dereference on C11/C++11
        * fix: we used weak symbols not weak aliases
        * fix: include 'sys/endian.h' on FreeBSD
        * fix: warnings on non-Linux platforms
        * fix: HAVE_SCHED_SETAFFINITY is not defined
        * configure: enable extended compiler warnings
        * cleanup: explicitly mark unused parameters (-Wunused-parameter)
        * fix: shadowed local variable (-Wshadow)
        * cleanup: all functions have declarations (-Wmissing-prototypes)
        * Import libtap from babeltrace
        * cleanup: add 'noreturn' attribute to '_uatomic_link_error'
        * fix: add missing 'S' to AC_CHECK_PROGS
        * README.md: Document supported Glibc version
        * README: cleanup stale MacOS information
        * Bump version to 0.13.0-pre
        * configure: standardise include path
        * Remove glibc < 2.4 compat code for sched_setaffinity
        * configure: regroup automake conditionals
        * Introduce AE_FEATURE to manage configure features
        * configure: regroup library checks
        * configure: regroup and expand C header and program checks
        * configure: regroup and expand C compiler checks
        * configure: host specific config
        * tests: Move tap-driver.sh out of the autotools aux directory
        * configure: Set autotools baseline
        * configure: centralize version information
        * fix: exclude clang from GCC version blacklists
        * aarch64: blacklist gcc prior to 5.1
        * Fix: configure: support Autoconf 2.70
        * Don't force a target and optimization level on ARMv7
        * Use DMB only on ARMv7
        * Blacklist GCC 4.4.0, 4.4.1 and 4.4.2 on ARM
        * Cleanup: Move ARM specific code to urcu/arch/arm.h
        * fix: bump tests thread limit to 4096
        * fix: reorder x86 arch detection
        * fix: typo in futex syscall define check
        * Compile time futex syscall detection
        * Static arch and uatomic headers
        * Add git-review config
        * cleanup: Improve wording of CONFIG_RCU_DEBUG description
        * fix: explicitly include urcu/config.h in files using CONFIG_RCU_ defines
        * Fix typo in README.md
        * fix: add -lurcu-common to pkg-config libs for each flavor
        * call_rcu: Fix race between rcu_barrier() and call_rcu_data_free()
        * Cleanup: tls-compat.h: add parentheses around expression (coding style)
        * Fix: tls-compat.h exposes compiler-dependent public configuration
        * Fix: tap array subscript has type char warning

2020-04-09 Userspace RCU 0.12.0
        * tls-compat.h: introduce DEFINE_URCU_TLS_INIT
        * Use _umtx_op for futex on FreeBSD
        * Add FreeBSD, DragonFly to syscall-compat.h
        * urcu-bp: perform thread registration on urcu_bp_register_thread
        * Require automake >= 1.12
        * cds_lfht_is_node_deleted parameter can be marked const
        * Fix: provide errno as argument to urcu_die()
        * Fix: rculfhash worker needs to unblock to SIGRCU
        * Cleanup: test_perthreadlock_timing: handle pthread mutex errors
        * Fix: SONAME bump to 6.1.0
        * Cleanup: remove unused variable from configure.ac check
        * Fix: urcu/futex.h: users of struct timespec should include time.h

2019-05-06 Userspace RCU 0.11.0
        * Bump library version to 6:0:1
        * Cleanup: update code layout to fix old gcc warning
        * Fix: typo CPPLAGS in examples Makefile
        * Harmonize pprint macro across projects
        * Check for TLS support after CC detection
        * Update macros from the autotools archive
        * tap-driver.sh: flush stdout after each test result
        * Update dead link in lgpl-relicensing.txt
        * Add multiflavor compat identifiers
        * Cleanup: missing sign compare fixes
        * Cleanup: enable signed/unsigned compare compiler warning
        * Cleanup: compiler warning on 32-bit architectures
        * config.h.in: rename CONFIG_RCU_MULTIFLAVOR to CONFIG_RCU_HAVE_MULTIFLAVOR
        * rculfhash: implement iterator debugging config option
        * Fix: examples silent rules on Solaris
        * Add missing fall through annotations
        * Fix: symbol aliases with TLS compat
        * Port: no symbols aliases on MacOS
        * Add -Wextra to CFLAGS
        * Add silent mode to examples Makefiles
        * doc: update examples to API changes
        * test multiflavor single compile unit
        * Update README following API changes
        * Use new header locations for includes from urcu code
        * Update call-rcu.h and defer.h comments and include guards
        * rculfqueue.h: do not include urcu-call-rcu.h
        * rculfhash: support use with multiple flavors per compile unit
        * rculfhash: do not include urcu-call-rcu.h from public API
        * Refactor liburcu to support many flavors per compile unit
        * Fix: only wait if work queue is empty in real-time mode
        * Fix: don't wait after completion of a work queue job batch
        * Fix: don't wait after completion of job batch if work queue is empty
        * Fix: workqueue: struct urcu_work vs rcu_head mixup
        * Cleanup: workqueue: update comments referring to call-rcu
        * Fix: mixup between URCU_WORKQUEUE_RT and URCU_CALL_RCU_RT
        * test_rwlock: Add per-thread count to verbose output
        * Add *.exe to gitignore for Cygwin
        * Fix: pthread_rwlock initialization on Cygwin
        * Fix: compat_futex_noasync on Cygwin
        * wfcqueue: allow defining CDS_WFCQ_WAIT_SLEEP to override `poll'
        * Update documentation for call_rcu before/after fork
        * Add support for the RISC-V architecture
        * Tests: Add tap-driver.sh for automake < 1.12
        * Tests: Replace prove by autotools tap runner
        * liburcu-bp: Use membarrier private expedited when available
        * liburcu: Use membarrier private expedited when available
        * rculfhash: improve error handling of mmap backend
        * Fix: don't use overlapping mmap mappings on Cygwin
        * Tests fix: errors in shell scripts
        * Revert "Use initial-exec tls model"
        * Use initial-exec tls model
        * Fix: don't use membarrier SHARED syscall command in liburcu-bp
        * Tests fix: add missing Cygwin thread id
        * Fix: assignment from incompatible pointer type warnings
        * Tests fix: unused variable warnings
        * Fix: add missing m68k headers to dist
        * Bump version to 0.11-pre

2017-06-12 Userspace RCU 0.10.0
        * Bump library soname due to urcu flavor structure change
        * Cleanup: use mutex_lock() wrapper in rculfhash
        * Use workqueue in rculfhash
        * Implement urcu workqueues internal API
        * Add support for m68k architecture
        * Set -Wall globally in AM_CFLAGS
        * Fix: remove double use of PTHREAD_CFLAGS
        * Re-add PTHREAD_CFLAGS to global CFLAGS
        * Fix: Don't override user variables within the build system
        * Add report at the end of configure
        * uatomic-api docs: use the third-person singular
        * Add --enable-rcu-debug to configure
        * ARM32: use dmb ish (inner shareable domain) for smp barriers
        * Cleanup: remove cmm_wmb() from rcu_xchg_pointer and rcu_cmpxchg_pointer
        * Fix: uatomic arm32: add missing release barrier before uatomic_xchg
        * Tests: Add verbose support to test script
        * Fix: add missing CONFIG_RCU_FORCE_SYS_MEMBARRIER to urcu/config.h.in
        * Allow forcing the use of sys membarrier
        * Fix: rcutorture: work-around signal issue on mac os x
        * Fix: rcutorture should register thread using call_rcu
        * Fix: add missing backslash in Makefile.am
        * Fix: Do not use wildcards in include/Makefile.am
        * Bump version to 0.10-pre
        * Fix: check for rand_r() in compat-rand.h
        * Fix: Move rand-compat to private src dir
        * Fix: remove AC_FUNC_MALLOC from configure.ac
        * Cleanup: Re-organise source dir
        * Cleanup: remove leftover manual pthread detection
        * Fix: update ax_pthread macro to handle newer clang
        * Update library current version due to adding destroy API
        * Fix: Use pthread_self to get threadid on OSX
        * Fix: examples: use destroy API for queues/stacks
        * Update library age due to new stack/queue destroy API
        * Fix: tests: invoke destroy APIs for queues/stacks
        * Fix: add missing destroy functions to queues/stack APIs
        * Fix: add missing __cds_wfcq_init for LGPL API
        * Fix: memory leak on hash table destroy
        * Fix: Add failover for platforms without nproc
        * Fix: use clock_get_time for caa_get_cycles fallback on MacOSX
        * Fix: syscall-compat.h MacOSX support
        * Fix: Add solaris-build.md to dist
        * rculfhash: Documentation: clarify need for grace period before "re-using"
        * Port: build shared libraries in Cygwin
        * Port: fix compatibility header for Cygwin
        * Add GNU Hurd support to syscall-compat.h
        * Add support for aarch64_be
        * Fix: urcu-bp: re-initialize list head on library exit
        * bootstrap: Standardize on autoreconf -vi
        * Harmonize bootstrap script across projects
        * Fix: examples make distcheck failure
        * wfcqueue: add C++ compatibility API
        * Fix: CDS_WFCQ_WOULDBLOCK typing for c++
        * Fix: configure.ac: check for possibly required libs for clock_gettime
        * Support for NIOS2 architecture
        * urcu_ref_get_safe: introduce new API
        * Fix: handle reference count overflow
        * Fix: compat_futex should work-around futex signal-restart kernel bug
        * Support for Xeon-Phi with newer MPSS
        * sparc64: allocate membarrier system call number
        * hppa: allocate membarrier system call number
        * Fix build on non-Linux Debian ports
        * Fix: urcu-signal: smp_mb_master() needs registry lock
        * Fix: rculfhash only needs to include urcu-pointers.h
        * Fix: out-of-tree benchmark/regtest
        * Fix: add missing regtest and benchmark files to dist tarball
        * Fix: add missing run.sh to benchmark makefile

2015-10-16 Userspace RCU 0.9.0
        * Bump soname major to 4
        * Cleanup: remove trailing tab
        * Fix: Use proper macro to detect stdbool.h
        * Configure: Add missing checks
        * Port: Add Solaris build instructions
        * Fix: regtest outputs valid TAP protocol
        * Port: Detect nproc bin name in benchmark scripts
        * Port: Add Solaris getcpu support
        * Port: Fixes to build system for portability
        * Port: Add Solaris support to tests/common/thread-id.h
        * Port: Add Solaris support to urcu/syscall-compat.h
        * Port: replace bzero() by memset()
        * Port: make bootstrap script work on most shell
        * tests: rcutorture: use parameters rather than random
        * Fix: only define membarrier system call on Linux
        * Refactor tests
        * Fix: cast caa_cycles_t to unsigned long long
        * caa_get_cycles: caa_ prefix for type, use CLOCK_MONOTONIC
        * Cleanup: remove trailing whitespaces at EOL
        * Cleanup: move generic caa_get_cycles to arch/generic.h
        * tile: allocate membarrier system call number
        * ia64: allocate membarrier system call number
        * aarch64: allocate membarrier system call number
        * powerpc64le: use "ppc" architecture
        * arm: allocate membarrier system call number
        * s390: allocate membarrier system call number
        * ppc: allocate membarrier system call number
        * lfstack: relax constraints on node re-use
        * Fix: format string signedness
        * Cleanup: tests: Branch condition evaluates to a garbage value
        * Fix: test: unchecked return value
        * Fix: test: side-effect in assertion
        * x86: allocate membarrier system call number
        * urcu-bp: use sys_membarrier when available
        * Cleanup: urcu: remove unused membarrier "group" parameter
        * urcu/ref.h: implement urcu_ref_get_unless_zero()
        * Fix: compat_futex: uninitialized ret variable
        * Fix: compat_futex_noasync: don't override return value
        * Fix: dynamic fallback to compat futex on sys_futex ENOSYS
        * Detect RCU read-side overflows
        * Detect RCU read-side underflows
        * Introduce urcu_assert and registration check
        * Fix: volatile in assert()
        * Update following changes to sys_membarrier ABI
        * uatomic: Specify complete types for atomic function calls
        * Cleanup: remove unused return value warning from tests
        * Fix: handle sys_futex() FUTEX_WAIT interrupted by signal
        * Fix: compat_futex.c: *uaddr should be read as volatile
        * Cleanup: cast poll delay return value to void
        * tests: Convert unit tests to TAP
        * Fix: make benchmark test run in oot build
        * Fix: call_rcu_thread() affinity failure
        * Cleanup: cast poll delay return value to void
        * Cleanup: cast poll delay return value to void
        * Cleanup: cast poll delay return value to void
        * Cleanup: cast poll delay return value to void
        * Cleanup: cast poll() return value to void for delays
        * urcu: fix deprecation warning with new glibc
        * urcu: add cds_list_for_each_entry_safe_from macro
        * Fix: deadlock when thread join is issued in read-side C.S.
        * Fix: rename RCU_DEBUG to DEBUG_RCU in urcu-qsbr.h
        * Cleanup some c99 pedantic warnings
        * Mark braced-groups within expressions with __extension__
        * Fix: compat_futex_noasync race condition
        * tests: Use stderr redirection for time output
        * Fix: use space after rpath for OS X ld
        * Fix: move transparent union attribute after union declaration for clang
        * Configure: add check for used type
        * Configure: add missing check of headers
        * Configure: add missing check for funcs: memset, strerror
        * Fix: documentation: urcu-pointer.h: s/rcu_dereference_pointer/rcu_dereference/
        * urcu-bp/urcu-qsbr: remove unneeded DEBUG_YIELD code
        * Fix: call rcu should call internal RCU API
        * Fix: silence gcc -Wextra warning
        * compiler: use __GNUC__ instead of the undefined __GNUC_MAJOR__
        * Fix: lfstack reversed empty/non-empty return value
        * lfstack: fix: add missing __cds_lfs_init
        * wfstack: add missing union parameters
        * Fix: preserve example files' timestamps when copying
        * wfstack: implement mutex-free wfstack with transparent union
        * wfcqueue: Implement mutex-free wfcqueue head with transparent union
        * lfstack: Implement mutex-free stack head with transparent union (v2)
        * rculfhash: remove duplicated code
        * rculfhash: handle pthread_create failures
        * rculfhash: fall back to single-threaded resize on calloc failure
        * x86: drop extra semi-colon in caa_cpu_relax
        * Cleanup: tests: cast console write return value as void
        * Modernize doc using Markdown
        * Fix: update automake following README to README.md change
        * Modernize README using Markdown
        * Fix: incorrect parenthesis in cds_hlist_for_each_entry_safe_2
        * Fix: Use after free in rcu_barrier()
        * Fix: rcu_barrier(): uninitialized futex field
        * call_rcu threads should clear their PAUSED flag when they unpause
        * test_urcu_fork: test many fork, with 3 children deep
        * Update list of supported architectures in README
        * Add support for hppa/PA-RISC architecture
        * Use autoconf AM_MAINTAINER_MODE
        * Use gcc atomics on aarch64/powerpc64le
        * Fix: move wait loop increment before first conditional block
        * Fix: high cpu usage in synchronize_rcu with long RCU read-side C.S.
        * Fix: out of tree build: doc/examples
        * Fix: out of tree build tests/common
        * tests/unit: use lib rather than source
        * automake: Rename INCLUDES to AM_CPPFLAGS (new name)
        * tests regressions: use lib rather than recompile from source
        * tests: use common lib rather than recompile compat sources
        * urcu tests: use lib rather than compile from source
        * urcu mb tests: use lib rather than recompile from source
        * urcu signal tests: use library rather than recompile source
        * tests: move yield debug to common test library
        * tests urcu bp: use lib rather than recompile source
        * test_urcu_defer: link on urcu lib rather than recompile source
        * tests/benchmark: use urcu qsbr lib rather than recompile from source
        * Pass the CC variable to the example Makefiles
        * Fix: urcu-bp interaction with threads vs constructors/destructors
        * x86 barrier for Xeon Phi: use rsp on x86-64
        * Set RCU_HAVE_FENCE to false on Intel Xeon Phi
        * Fix undefined NULL pointer arithmetic in hlist
        * Cleanup: Check for pthread in Libc
        * Cleanup: Android: Do not redefine gettid
        * Fix undefined NULL pointer arithmetic
        * Android: implement rand_r()
        * Android: do not redefine gettid on Android
        * Android: add a compat layer for 'syscall.h'
        * Android: do not link pthread on Android
        * Android: configure.ac Android check
        * Blacklist ARM gcc 4.8.0, 4.8.1, 4.8.2
        * rculfhash: document max_nr_buckets = 0
        * Library major version number (soname) increment to 3
        * Fix: tls-compat multi-lib conflict
        * Use cross compiler for doc examples
        * Add lttng-dev mailing list to readme
        * wfcqueue: remove misleading comment
        * gcc warning fixes: -Wsign-compare and -Wextra
        * Fix: urcu-qsbr: reversed logic on RCU_DEBUG
        * Fix: urcu-bp segfault in glibc pthread_kill()
        * Fix urcu-bp: don't move registry
        * Fix: compat futex duplicated lock and completion
        * Fix: i386 compat code duplicated mutex instances
        * Fix: urcu-bp: Bulletproof RCU arena resize bug
        * Fix: test_mutex.c uninitialized mutex

2013-09-06 Userspace RCU 0.8.0
        * Fix: hash table growth (for small tables) should be limited
        * Fix: doc/examples cross-build
        * Introduce URCU_INLINE_SMALL_FUNCTIONS
        * Add missing tests/common/Makefile.am
        * README: document make check/regtest/bench
        * tests: split in check, regtest and bench targets
        * Cleanup: doc/examples makefile
        * Fix: doc/examples VPATH build
        * doc/examples: Move the LIBS after the OBJECTS in the Makefile
        * Document build work-around on MacOS X
        * Fix tests: use of uninitialized variables
        * test_urcu_hash*: initialize TLS seeds
        * doc/examples: cds_lfht_for_each_entry_duplicate
        * doc/examples: cds_lfht_lookup
        * doc/examples: cds_lfht_destroy
        * doc/examples: cds_lfht_add_replace
        * doc/examples: cds_lfht_add_unique
        * doc/examples: cds_lfht_add/cds_lfht_del
        * doc/examples: add rculfqueue example
        * doc/examples: add synchronize_rcu()
        * doc/examples: add bp flavor
        * doc/examples: add dist toplevel makefile
        * doc/examples: add membarrier flavor
        * doc/examples: document call_rcu()
        * doc/examples: update qsbr example
        * urcu signal: remove assertion on exit
        * doc/examples: signal flavor
        * doc/examples: add mb flavor
        * doc/examples: update qsbr
        * doc/examples: introduce urcu-flavors examples directory
        * doc/examples: enhance rcu-flavor-qsbr example
        * doc/examples: rename qsbr-minimal to rcu-flavor-qsbr
        * doc/examples: automake stop on error
        * doc/examples: hlist
        * hlist/rcuhlist update
        * doc/examples: fix typo in list example
        * rcuhlist: make pointer stores atomic
        * hlist, rcuhlist: cleanup coding style
        * doc/examples: lfstack
        * doc/examples: update cds_wfs_pop_all_blocking
        * doc/examples: cds_wfs_pop_all_blocking
        * doc/examples: cds_wfs_pop
        * doc/examples: add missing Makefile
        * doc/examples: cds_wfs_push
        * doc/wfcqueue: cds_wfcq_splice
        * doc/examples: add cds_wfcq_dequeue
        * doc/examples: wfcq needs to link against urcu-common
        * doc/examples: update queue comment
        * doc/examples: fix make clean
        * gitignore: add qsbr-minimal
        * doc/examples: cds_wfcq_enqueue
        * doc/examples: Move LIBS to each makefile
        * doc/examples: cds_list_for_each_rcu
        * doc/examples: cds_list_for_each_entry_rcu
        * doc/examples: cds_list_replace_rcu
        * doc/examples: cds_list_add_tail_rcu
        * doc/examples: cds_list_del_rcu
        * doc/examples: cds_list_add_rcu
        * rculist: ensure atomic updates of next pointers
        * rculist: implement cds_list_add_tail_rcu
        * rculist.h and list.h style cleanup
        * example makefile: add missing cd ..
        * Update gitignore
        * Fix: examples Makefile on FreeBSD
        * hash table test: don't redefine CACHE_LINE_SIZE
        * tests: use thread-id.h wrapper
        * Implement thread-id.h wrapper
        * tests: add missing unsigned long casts to pthread_self()
        * Fix: don't build examples in static builds
        * Add QSBR minimal example
        * compiler.h: implement CAA_ARRAY_SIZE()
        * document rcu barrier
        * rcu barrier: handle OOM die urcu_die
        * Implement rcu_barrier()
        * rculfhash: document destroy context limitations
        * Add MIPS to README
        * Update README
        * Update README testing info about FreeBSD
        * test: fix api.h missing if brackets
        * tests: fix incorrect counter
        * Fix: membarrier fallback symbol conflict
        * Fix: Use a filled signal mask to disable all signals
        * urcu-bp: introduce struct urcu_gp
        * Fix: struct urcu_gp broke multiflavor
        * Cleanup test usage printout
        * wfstack tests: use pop "last" state info
        * wfstack: return whether pop is popping the last element
        * wfcqueue tests: use dequeue empty state
        * wfcqueue: return whether dequeue is dequeuing last element
        * urcu: avoid false sharing for rcu_gp_ctr
        * urcu: make the code of urcu-qsbr as normal urcu
        * rculfhash: detect if resize/destroy are called within RCU read-side C.S.
        * Documentation: rculfhash: cds_lfht_resize not within read-side C.S.
        * fix: rculfhash don't change qsbr online state
        * Add rcu_read_ongoing() API to each urcu flavor
        * Add "sparc" host cpu to configure.ac
        * futex: include syscall.h instead of sys/syscall.h
        * Add tab to output in order to allow easy nesting of tables.
        * Remove urcu-api-list.sh from dist tarball
        * Add urcu-api-list.sh script
        * list: implement cds_list_for_each_safe()
        * Fix: tests/api.h use cpuset.h
        * Fix hurd-i386: move cpuset tests outside of sched_setaffinity conditional
        * Fix tests: finer-grained use of CPU_SET, CPU_ZERO and cpu_set_t
        * Test for CPU_SET
        * Fix build on architectures with HAVE_SCHED_GETCPU but without HAVE_SYSCONF
        * README: document that Clang 3.0 (based on LLVM 3.0) is supported
        * clang: silence "unused expression result" warning
        * rculfhash: add assertions on node alignment
        * Spelling cleanups within comments and documentation
        * Fix configure checks for Tile
        * uatomic: style fix
        * doc/cds-api.txt: expand documentation
        * README: document each API file
        * README: reorganize
        * Add compilation support for the TileGX architecture
        * wfstack: add nonblocking to _LGPL_SOURCE API
        * Discourage use of pthread_atfork() for call_rcu handlers
        * Fix call_rcu fork handling
        * test: fork handling
        * rculfhash: add cds_lfht_replace to the write operations in the comments
        * urcu: fix comments for cds_list_for_each_prev()
        * documentation: fix rcu-api.txt duplicates
        * test wfcq: remove unneeded urcu.h include
        * test wfs: remove unneeded urcu.h include
        * urcu: declare test_urcu_multiflavor functions
        * urcu: remove the wrong comma
        * wfstack: implement nonblocking pop and next
        * wfcqueue: document first/next return values
        * wfstack: update comments about cds_wfs_empty/first being wait-free
        * wfstack API: rename cds_wfs_first_blocking to cds_wfs_first
        * wfstack test: test if number of push to empty vs pop_all match
        * wfstack: document first/next return values
        * test wfstack: enforce external mutex if needed by default
        * test wfcqueue: enforce external mutex if needed by default
        * urcu-mb/signal/membarrier: batch concurrent synchronize_rcu()
        * urcu-wait: move queue management code into urcu-wait.h
        * urcu-wait: move wait code into separate file
        * urcu-qsbr: batch concurrent synchronize_rcu()
        * tests: use standard malloc/free for synchronize_rcu()
        * urcu-bp: move quiescent threads to separate list
        * urcu-mb/signal/membarrier: move quiescent threads to separate list
        * urcu-qsbr: move offline threads to separate list
        * urcu-bp: improve 2-phase wait scheme
        * urcu-mb/signal/membarrier: improve 2-phase wait scheme
        * urcu-qsbr: improve 2-phase wait scheme
        * wfcqueue: implement mutex-free splice
        * wfcqueue: document empty criterion
        * urcu-call-rcu: use wait-free splice return value
        * test wfcqueue: add tests for queue state return value
        * wfcqueue: enqueue and splice return queue state
        * Fix: wfcqueue nonblocking dequeue
        * wfcqueue: Fix lock and unlock functions
        * runtests: Make path of time binary configurable
        * urcu-qsbr: skip Q.S. reporting if already reported
        * Fix TLS detection: test with linker, add --disable-compiler-tls
        * Cleanup: cast pthread_self() return value to unsigned long
        * Fallback mechanism not working on platform where TLS is unsupported
        * Revert "Fix: cross-build: configure.ac should use --target, not --host"
        * Fix: cross-build: configure.ac should use --target, not --host
        * test_urcu_wfcq: add splice and nosync tests
        * test_urcu_wfs: cleanup
        * test_urcu_lfs: cleanup
        * Fix static linking: add missing static for _defer_rcu
        * tests: report error value for make check
        * Add multiflavor test program
        * Fix static linking: fix symbol name namespaces
        * Fix static linking: add missing static to thr_defer
        * Fix static linking: add missing static
        * deprecation: fix build with gcc < 4.5
        * wfstack.c: update copyright notice
        * Update wfstack copyright notice
        * Comment fix: update associated LGPL header name
        * Update cds-api.txt following API deprecations
        * Deprecate wfqueue
        * Deprecate rculfstack
        * wfcqueue: introduce nonblocking API
        * lfstack: test pop_all and pop
        * lfstack: implement empty, pop_all and iterators, document API
        * lfstack: implement test
        * lfstack: implement lock-free stack
        * wfstack: implement pop_all and iteration tests
        * wfstack: implement cds_wfs_pop_all and iterators, document API
        * rculfhash test: fix trivial memleak and return node leak and errors
        * rculfhash: add missing extern
        * Cleanup: fix cppcheck errors
        * wfcqueue: remove ancient comment
        * test_urcu_lfq: remove rcu_defer_register_thread() from test_urcu_lfq
        * test_urcu_lfq: test for the proper pointer
        * test_urcu_lfs: remove rcu_defer_register_thread() from test_urcu_lfs
        * test_urcu_lfs: test for the proper pointer
        * wfcqueue: clarify locking usage
        * Document APIs in README
        * Test cleanup: replace "l" parameter by "loops"
        * Add wfcqueue header to cds.h
        * Fix: urcu-bp, urcu, urcu-qsbr should include wfcqueue
        * Fix: call_rcu list corruption on teardown (documentation)
        * call_rcu: remove head field alignement, explain wfcqueue motivation
        * wfcqueue: update credits in patch documentation
        * wfcqueue documentation: hint at for_each iterators
        * Fix urcu-call-rcu-impl.h: false-sharing
        * call_rcu: use wfcqueue, eliminate false-sharing
        * wfcqueue test
        * wfcqueue: implement concurrency-efficient queue
        * Ensure that read-side functions meet 10-line LGPL criterion
        * tls-compat.h: document sigaltstack(2) limitation
        * urcu: add notice to URCU_TLS() for it is not strictly async-signal-safe
        * Document sigaltstack(2) limitation
        * Documentation: update LICENSE file

2012-08-27 Userspace RCU 0.7.4
        * rculfhash API documentation: document destroy RCU read-lock constraint
        * Fix: rculfhash should be offline while waiting for resize to complete
        * Add missing entry to gitignore
        * urcu: move busy-wait code and name it ___cds_wfq_node_sync_next()
        * urcu: fix compat_futex_noasync()
        * urcu: add hint to DEFINE_URCU_TLS() for compound types
        * Fix: CAA_BUILD_BUG_ON should refer to CAA_BUILD_BUG_ON_ZERO
        * Add MIPS support
        * Compatibility: remove bash-ismsm from test scripts
        * Fix inappropriate lib behavior: don't call exit()
        * Fix: re-enable compatibility with autoconf < 2.64
        * Fix c99 compatibility: use __asm__ and __volatile__ in public headers
        * Fix c99 compatibility: use __typeof__ instead of typeof in public headers
        * warning fix: tests urcutorture for NetBSD 5

2012-06-01 Userspace RCU 0.7.3
        * Fix tests: make dist lib dependency
        * Update README for OS supported, tests dependency
        * Add CodingStyle to tarball
        * Add coding style document
        * Test fix: test_perthreadlock uninitialized mutex
        * tests: support FreeBSD short "time" args
        * freebsd 8.2 fix: define MAP_ANONYMOUS for compatibility

2012-05-24 Userspace RCU 0.7.2
        * Fix library compatibility

2012-05-24 Userspace RCU 0.7.1
        * fix: uatomic_set return value compile fix for non-x86 arch.

2012-05-21 Userspace RCU 0.7.0
        * Cleanup: header comments coding style
        * Document uatomic operations
        * Update return value of "set" operations
        * Fix mremap wrapper for NetBSD 5
        * Use urcu/tls-compat.h
        * Implement urcu/tls-compat.h
        * Add TLS detection m4 macro
        * document concurrent data structures
        * documentation: refer to rcu-api.txt
        * Move API.txt to doc/rcu-api.txt, install in system doc/
        * rculfhash: document implied memory barriers
        * rculfhash: Ensure future-proof memory barrier semantic consistency
        * API cleanup: use "uatomic_*" in cmm_smp_mb__ API
        * uatomic: add memory barrier API for and/or/add/sub/inc/sub
        * rculfhash: add runhash.sh test script
        * rculfhash tests: add missing check
        * rculfhash: fix: race between replace and del operations
        * rculfhash: replace unneeded rcu_dereference by CMM_LOAD_SHARED
        * rculfhash: use do {} while (0) for dbg_printf()
        * rculfhash: cleanup typo
        * rculfhash: update API comments
        * rculfhash: update comments in implementation
        * rculfhash tests: add long hash chains tests
        * rculfhash tests: add uniqueness test
        * rculfhash test: print test name
        * rculfhash: stress requirement in documentation
        * rculfhash: fix typo
        * rculfhash tests: use array of callbacks to modularize
        * rculfhash tests: modularize tests
        * rculfhash: document ordering guarantees
        * rculfhash: document linearizability guarantees
        * rculfhash: update removal comment
        * Add missing files to .gitignore
        * Fix out-of-tree build
        * rculfhash: check malloc NULL pointer
        * Fix uatomic sign cast
        * Remove unused jhash.h file
        * Fix: use known license text, fix incorrect FSF address
        * Fix: add missing sched.h include in rculfhash.c
        * Allow tests to run on architectures without per-cpu call_rcu support
        * Hash table test: FreeBSD compatibility fix
        * tests: define _GNU_SOURCE instead of __USE_GNU
        * RCU lock-free hash table: implement cds_lfht_is_node_deleted()
        * Define _GNU_SOURCE to access CPU_ZERO() macro in uClibc
        * Install ChangeLog and README into system's doc
        * Fix AC_LANG_SOURCE usage: only takes one parameter
        * Fix autoconf futex check
        * configure.ac: Use AC_LANG_SOURCE for if else macros
        * Refresh autoconf files
        * Update gitignore
        * rculfhash: add comment about hash seed randomness within test program
        * readme: state correct GCC dependency for ARM
        * rculfhash: remove an invocation of bit_reverse_ulong() when adding
        * rculfhash: remove unneeded conversion
        * rculfhash: remove unneeded clear_flag()
        * cds_lfht_replace: add checks for old/new node hash/value match
        * rculfhash: use node instead of iter argument for deletion
        * rculfhash: number of logically removed nodes should not appear in API
        * Document that flags could be represented on 2 bits
        * Add missing REMOVAL_OWNER_FLAG comment to cds_lfht_node comment
        * _cds_lfht_del is not used for buckets anymore, remove parameter
        * rculfhash: Relax atomicity guarantees required by removal operation
        * remove unneeded "return;"
        * simplify the deletion for bucket node
        * Remove unneeded code
        * Cleanup DEFINE_RCU_FLAVOR()
        * Add cds_lfht_ prefix to fls_ulong, get_count_order_ulong, get_count_order_u32
        * Merge RCU Lock-Free Resizable Hash Table

2011-12-12 Userspace RCU 0.6.7
        * Add compat file for test urcu wfs
        * Add missing compat file for wfq test
        * hlist.h: Add missing stddef.h include for NULL
        * call_rcu: Add missing call_rcu_before_fork and
          call_rcu_after_fork_parent declarations
        * Describe autotools/libtool/automake version dependency
        * Remove m4_ifdef for AC_PROG_LIBTOOL (deprecated)
        * Support older autotools
        * Apply autoupdate to configure.ac
        * Fix build for amd64 environment (for FreeBSD 8.2)
        * Add missing rcu_dereference_sym_bp
        * Install test scripts in the dist tarball

2011-11-03 Userspace RCU 0.6.6
        * qsbr vs call_rcu : remove exit assertion
        * Rename likely/unlikely to caa_likely/caa_unlikely
        * Reinsert missing test_urcu_*.c files (missing in rename)
        * rename test_qsbr to test_urcu_qsbr
        * urcu-pointer: fix rcu_set_pointer unset return value
        * Enhance API.txt documentation, add to Makefile as EXTRA_DIST

2011-09-29 Userspace RCU 0.6.5
        * call_rcu: Document call_rcu requirements
        * call_rcu: fix error handling of malloc error
        * urcu call_rcu: Use RCU read-side protection for per-cpu call_rcu data
        * urcu,call_rcu: Cleanup call_rcu_data pointers before use in child
        * urcu,call_rcu: avoid create call_rcu_data for child when unneed
        * urcu,defer_rcu: Make defer_rcu encoding more compact for marker
        * urcu_defer: Use cancellation flag instead of pthread_cancel()
        * urcu,call_rcu: protects call_rcu_data_list when remove node
        * Create default call rcu data upon per-cpu call-rcu teardown
        * powerpc: use __NO_LWSYNC__ check to use appropriate lwsync/sync opcode
        * cmm: provide lightweight smp_rmb/smp_wmb on PPC
        * atomic: provide seq_cst semantics on powerpc
        * avoid leaking crdp for failed path
        * Return -EEXIST when the old cpu call_rcu_data has not been removed
        * protect writing to per_cpu_call_rcu_data[*]
        * wake up default call_rcu thread after we move the leftover callbacks
        * avoid memory leak in call_rcu_data_free()
        * urcu call_rcu: fix use after free()
        * use get_cpu_call_rcu_data() for get_call_rcu_data()
        * init maxcpus before use
        * call_rcu implementation: add missing static
        * Document QSBR interaction with mutexes
        * urcu-pointer: implement URCU_FORCE_CAST for C++ compatibility of urcu-pointer.h
        * urcu-qsbr: use rcu_thread_offline/rcu_thread_online instead of inlining them
        * Pair all_cpu call_rcu create with free
        * QSBR: add missing wakeups in synchronize_rcu code
        * cmm: do not generate code for smp_rmb/smp_wmb on x86_64
        * cmm: let per-arch files provide cmm_smp_* barriers
        * Optimize caa_get_cycles() for PowerPC64
        * lfq/lfs tests: use call_rcu
        * list: Add cds_list_first_entry
        * rculfstack/queue: define _LGPL_SOURCE around static header include
        * Add __rcu annotation (unimplemented)
        * Fix incorrect fsf address in header files
        * wfstack: push returns prior stack emptiness state
        * Make lf stack push return if the stack was empty
        * Document caa_container_of
        * urcu-bp: do not call munmap for NULL registry at exit
        * urcu libraries can directly use the _LGPL_SOURCE wfqueue
        * rculfstack: document "push"
        * Add runall.sh to tarball
        * Fix build order of liburcu-cds-common
        * Fix missing check for SYS_membarrier in map header
        * urcu-qsbr: avoid useless futex wakeups and burning CPU for long grace periods
        * api: reimplement BUILD_BUG_ON in compiler.h
        * test api cleanup: remove unused primitives
        * put thread offline while waiting for the init flag
        * urcu: move private definitions to .c file
        * urcu-bp: move private definitions to .c file
        * urcu-qsbr: move private definitions to .c file
        * rcutorture: fix rcutorture-qsbr
        * wfqueue: fix type-incorrect assignment
        * Fix tests Makefile EXTRA_DIST to use api.h
        * Fix choice of default flavour in urcu/map/urcu.h
        * api: remove list/hlist
        * api: remove arch-specific files
        * api: make api_gcc.h a superset of the other headers
        * tests api: remove atomics
        * put thread offline while waiting for the init flag
        * urcu: move private definitions to .c file
        * urcu-bp: move private definitions to .c file
        * urcu-qsbr: move private definitions to .c file
        * rcutorture: fix rcutorture-qsbr
        * wfqueue: fix type-incorrect assignment
        * Use caa_ prefix for min() and max()

2011-07-21 Userspace RCU 0.6.4
        * uatomic: Fix ARM build errors in uatomic.
        * urcu tests: hold mutex across use of custom allocator.
        * Portability fixes to support FreeBSD 8.2.

2011-06-27 Userspace RCU 0.6.3
        * uatomic: Fix i386 compatibility build errors in uatomic.

2011-06-13 Userspace RCU 0.6.2
        * Fix build on powerpc.

2011-06-13 Userspace RCU 0.6.1
        * Add missing headers into release tarball:
            urcu-call-rcu-impl.h and urcu-defer-impl.h

2011-06-10 Userspace RCU 0.6.0
        * Added call_rcu() support, graciously contributed by Paul E. McKenney.
        * Added urcu/cds.h and merged all "Concurrent Data Containers" (CDS)
          into a single .so: liburcu-cds.so to have a single header/shared
          object holding all concurrency-aware data containers. It provides
          support for RCU lists, queues and stacks at the moment.
        * liburcu 0.6.0 now allows linking a single application with multiple
          flavors of RCU. This required a library API change which is
          incompatible with older 0.5.x liburcu. The .so version number
          is therefore bumped from 0 to 1 (e.g. liburcu.so.1).
        * Added "atfork" handling API, documented in README. Only useful for
          processes using fork() without following exec().
        * Renaming the following files, keeping the old files (producing a
          compiler warning):
            urcu/uatomic_arch.h -> urcu/uatomic.h
            urcu/urcu-futex.h -> urcu/futex.h
            urcu/urcu_ref.h -> urcu/ref.h

2011-03-04 Userspace RCU 0.5.4
         *  urcu-bp: Update fork() handling

            Introduce

            extern void rcu_bp_before_fork(void);
            extern void rcu_bp_after_fork_parent(void);
            extern void rcu_bp_after_fork_child(void);

            to handle fork gracefully. These disable signals and hold
            the registry mutex across forks. (this flavor of the liburcu
            library ("bp" for "bulletproof") is mainly used by UST, the
            user-space tracer).

2011-03-03 Userspace RCU 0.5.3
        * Add support for older ARM single-CPU architecturess (pre-ARMv7)
          (thanks to Jason Wessel from WindRiver).
        * Fix ARMv7 cmm_rmb/cmm_wmb primitives (use a dmb barrier).
        * Remove leftover list_t type from urcu/list.h (namespace cleanup).
        * urcu_defer: handle malloc error value.
        * Update README file to describe urcu interaction with fork() when not
        * followed
          by an exec() system call.

2010-11-18 Userspace RCU 0.5.2
        * Fix renaming error introduced in 0.5.0.

2010-11-18 Userspace RCU 0.5.1
        * Fix renaming error introduced in 0.5.0. (incomplete fix)

2010-11-18 Userspace RCU 0.5.0
        * Version 0.5.0 changes the API presented by memory model,
          architecture abstraction and data structure primitives in
          headers. The prefixes are, respectively:
            - cmm_ : Concurrent Memory Model
            - caa_ : Concurrent Architecture Abstraction
            - cds_ : Concurrent Data Structures

2010-03-04 Userspace RCU 0.4.2
        * Add generic uatomic ops support.
        * Bugfix in urcu-bp. (rare garbage collection bug occurring in
          multithreaded environment). Only affects urcu-bp users (UST).

2010-02-12 Userspace RCU 0.4.1
        * s390: compilation fix.

2010-01-30 Userspace RCU 0.4.0
        * API change: SIGURCU -> SIGRCU
        * API changes: standardize on rcu_ prefix.
        * API change: urcu_init -> rcu_init.
        * urcu/config.h options renamed to CONFIG_RCU_HAVE_FENCE,
          CONFIG_RCU_HAVE_FUTEX, CONFIG_RCU_SMP, CONFIG_RCU_COMPAT_ARCH.
          ((moving from URCU -> RCU).
        * library names changes: liburcu becomes the "default" version, using
          sys_membarrier() when available, and using liburcu-mb as a
          fallback.
        * The signal-based liburcu is renamed from liburcu to
          liburcu-signal. People previously using the signal-based
          "liburcu" will automatically be moved to the "default" liburcu
          version.

2009-11-16 Userspace RCU 0.3.1
        * Add support for sparcv9 32-bit build.
        * Update build system to use --host instead of --target.

2009-11-03 Userspace RCU 0.3.0
        * API change for the "deferred work" interface.

2009-10-14 Userspace RCU 0.2.3
        * Move to autotools.
        * Automated architecture detection, with i386 fallback.
        * Detect if NR_futex is on the system, fallback on portable
          alternatives.
        * Add configure mode for UP-only systems.

2009-10-02 Userspace RCU 0.2.2
        * Phases out rcu_publish_content() api.
        * Adds type checking to urcu-pointer.h pointer exchange primitives.

2009-10-02 Userspace RCU 0.2.1
        * small header dependency fix for rculist.h.
        * new "liburcu-bp.so" : "Bulletproof RCU", made especially for
          the UST userspace tracer. It's a library that sacrifices a bit
          of read-side performance for automatically monitoring thread
          creation/removal. See README for details.

2009-10-01 Userspace RCU 0.2
        * Clarify usage of rcu_cmpxchg_pointer, rcu_xchg_pointer,
          rcu_set_pointer.

2009-09-29 Userspace RCU 0.1
        * Initial release.

Generated by dwww version 1.15 on Fri May 24 06:54:40 CEST 2024.