2015-04-28 Userspace RCU 0.8.7
	* Fix: deadlock when thread join is issued in read-side C.S.
	* Fix: rename RCU_DEBUG to DEBUG_RCU in urcu-qsbr.h
	* Mark braced-groups within expressions with __extension__
	* Fix: compat_futex_noasync race condition
	* Fix: documentation: urcu-pointer.h: s/rcu_dereference_pointer/rcu_dereference/
	* Fix: call rcu should call internal RCU API

2014-11-04 Userspace RCU 0.8.6
	* 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

2014-10-21 Userspace RCU 0.8.5
	* Fix: preserve example files' timestamps when copying
	* 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
	* Fix: Use after free in rcu_barrier()
	* Fix: rcu_barrier(): uninitialized futex field
	* call_rcu threads should clear their PAUSED flag when they unpause
	* Fix: bring back dummy rcu_bp_exit symbol

2014-03-08 Userspace RCU 0.8.4
	* Fix: move wait loop increment before first conditional block

2014-03-01 Userspace RCU 0.8.3
	* Fix: high cpu usage in synchronize_rcu with long RCU read-side C.S.

2014-02-28 Userspace RCU 0.8.2
	* 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
	* Fix undefined NULL pointer arithmetic
	* Blacklist ARM gcc 4.8.0, 4.8.1, 4.8.2
	* rculfhash: document max_nr_buckets = 0

2013-11-12 Userspace RCU 0.8.1
	* tls-compat: fix comment typo
	* Keep ABI compatible with already compiled LGPL applications
	* Fix: tls-compat multi-lib conflict
	* Use cross compiler for doc examples
	* 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.
