uatomic/x86: Remove redundant memory barriers
[urcu.git] / ChangeLog
index 61056c1c75e03c4f581edfd05865123068e5ec7d..a7fd3497dbf9d213876c1eed188a4b669ebe9dcc 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,224 @@
+# SPDX-FileCopyrightText: 2011-2023 Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
+#
+# SPDX-License-Identifier: CC-BY-4.0
+
+2023-02-14 Userspace RCU 0.14.0
+       * Fix: urcu-bp: only teardown call-rcu worker in destructor
+       * Fix: rculfhash: urcu_die() takes positive error value
+       * Fix: call_rcu: teardown default call_rcu worker on application exit
+       * Fix: join worker thread in call_rcu_data_free
+       * Docs: clarify grace period polling API
+       * Document grace period polling in rcu-api.md
+       * Implement poll rcu stress test in rcutorture
+       * urcu-memb,mb,signal: Implement grace period polling
+       * Fix: auto-resize hash table destroy deadlock
+       * Fix building on MSYS2
+       * rculfhash: Include rculfhash-internal.h from local directory
+       * Remove "Darwin" from "should also work on list"
+       * Merge branch 'adah1972-improve-md'
+       * Add semicolons at the end of function prototypes
+       * Wrap a file name in backticks
+       * Wrap command-line options in backticks
+       * Fix a wrong format
+       * Wrap URLs in angle brackets
+       * Fix Markdown issues
+       * Fix: Always check pthread_create for failures
+       * Disable signals in URCU background threads
+       * 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
+       * Add unit tests for possible_cpus_array_len
+       * 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
+       * Update ABI definition files
+       * Bump version current and age
+       * alpha: allocate membarrier system call number
+       * Bump version to 0.14.0-pre
+       * Improved test framework
+       * rculfhash: introduce cds_lfht_node_init_deleted
+       * Fix: changelog: v0.13.0 was released in 2021
+       * cleanup: i386 arch detection
+       * fix: properly detect 'cmpxchg' on x86-32
+       * fix: use urcu-tls compat with c++ compiler
+       * Fix typo
+       * fix: remove autoconf features default value in help message
+       * fix: add missing pkgconfig file for memb flavour lib
+       * Cleanup: Tests: Remove useless pre-C99 compatibility code from tap.h
+       * Document C99 and C++11 requirement in README.md
+       * Always use '__thread' for Thread local storage except on MSVC
+       * Fix: powerpc32: transparent unions alter calling convention
+       * fix: don't use C++ thread_local on MacOs
+       * wfcqueue API: implement overloaded wrappers with templates
+       * wfcqueue: combine C++ API cds_wfcq_head_cast with overloading
+       * wfstack C++ API: implement overloaded wrappers with templates
+       * lfstack C++ API: implement overloaded wrappers with templates
+       * wfstack: combine C++ API cds_wfs_stack_cast with overloading
+       * lfstack: combine C++ API cds_lfs_stack_cast with overloading
+       * fix: test_build tap plan
+       * Test C++ build of list head init
+       * Fix order of initializers in CDS_LIST_HEAD_INIT
+       * unit tests: test wfcqueue, wfstack, lfstack empty check functions in C++
+       * wfcqueue: implement C++ API based on function overloading
+       * wfstack: implement C++ API based on function overloading
+       * lfstack: implement C++ API based on function overloading
+       * Fix tap.h: remove extra semicolon in pass/fail macros
+       * Add C++ build tests
+       * Build and run regression and unit tests as C++ programs
+       * Add --enable-Werror configure switch
+       * Add `urcu_posix_assert()` as `assert()` replacement
+       * Rename `urcu_assert()` to `urcu_assert_debug()`
+       * cleanup: spelling fixes in comments
+       * Make temporary variable in _rcu_dereference non-const
+       * (tls-ie2) 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
+
+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
This page took 0.024173 seconds and 4 git commands to generate.