userspace-rcu/userspace-rcu.changes

420 lines
19 KiB
Plaintext
Raw Permalink Normal View History

-------------------------------------------------------------------
Wed Mar 8 16:10:54 UTC 2023 - Dirk Müller <dmueller@suse.com>
- update to 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
* 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
-------------------------------------------------------------------
Fri Aug 19 14:30:31 UTC 2022 - Alexei Sorokin <sor.alexei@meowr.ru>
- Update to version 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: futex wait: handle spurious futex wakeups.
* Fix: Use %lu rather than %ld to print count.
-------------------------------------------------------------------
Sun Jan 23 10:46:40 UTC 2022 - Dirk Müller <dmueller@suse.com>
- update to 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
-------------------------------------------------------------------
Wed Dec 15 21:11:57 UTC 2021 - Dirk Müller <dmueller@suse.com>
- update to 0.13.0:
* The Userspace RCU 0.13 release is mostly a library soname version bump
to address an ABI incompatibility between the 0.10 and { 0.11, 0.12 }
releases. see https://lists.lttng.org/pipermail/lttng-dev/2021-June/030023.html
-------------------------------------------------------------------
Mon Mar 8 23:28:27 UTC 2021 - Dirk Müller <dmueller@suse.com>
- update to 0.12.2:
* fix: exclude clang from GCC version blacklists
* aarch64: blacklist gcc prior to 5.1
* Fix: configure: support Autoconf 2.70
* fix: bump tests thread limit to 4096
* 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()
-------------------------------------------------------------------
Tue Aug 25 09:30:59 UTC 2020 - Dirk Mueller <dmueller@suse.com>
- update to 0.12.1:
* Fix: tls-compat.h exposes compiler-dependent public configuration
* Fix: tap array subscript has type char warning
* 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
* 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
-------------------------------------------------------------------
Wed Nov 29 09:37:35 UTC 2017 - dimstar@opensuse.org
- Add baselibs.conf: create liburcu6-32bit package as a dependency
to liblttng-ust0-32bit.
-------------------------------------------------------------------
Fri Sep 1 18:56:18 UTC 2017 - tonyj@suse.com
- Update to version 0.10.0 for SLE15 (bsc#1055683)
Drop patch: userspace-rcu-aarch64.patch (upstream v0.9.0~99)
Drop patch: userspace-rcu-ppc64le.patch (upstream v0.9.0~24)
Adjust library soname to 6
Update keyring
-------------------------------------------------------------------
Tue Mar 15 15:56:31 UTC 2016 - dvaleev@suse.com
- userspace-rcu-ppc64le.patch use ppc for ppc64le
http://git.lttng.org/?p=userspace-rcu.git;a=commit;h=61126bd9c901fa403315db71d8d5351d716717cb
-------------------------------------------------------------------
Tue Sep 29 19:09:49 UTC 2015 - dmueller@suse.com
- remove dependency on gpg-offline, is done by source validator
- drop userspace-rcu-ppc64le.patch, included in
userspace-rcu-aarch64.patch
-------------------------------------------------------------------
Mon Aug 31 19:14:52 UTC 2015 - dmueller@suse.com
- add userspace-rcu-aarch64.patch (fate#318370)
enables build for aarch64
-------------------------------------------------------------------
Tue Jul 28 22:32:41 UTC 2015 - tonyj@suse.com
- Update to version 0.8,7 (FATE#319273)
Changelog 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
-------------------------------------------------------------------
Mon Nov 24 15:56:46 UTC 2014 - mq@suse.cz
- updated to 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
* 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
-------------------------------------------------------------------
Fri Mar 28 10:47:13 UTC 2014 - pgajdos@suse.com
- updated to 0.8.4:
* 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
* Fix undefined NULL pointer arithmetic
* Blacklist ARM gcc 4.8.0, 4.8.1, 4.8.2
* rculfhash: document max_nr_buckets = 0
-------------------------------------------------------------------
Tue Dec 3 15:11:55 UTC 2013 - dvaleev@suse.com
- Fix build on ppc64le platform
- added patches:
* userspace-rcu-ppc64le.patch
-------------------------------------------------------------------
Tue Nov 26 15:07:34 UTC 2013 - pgajdos@suse.com
- updated to 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
-------------------------------------------------------------------
Mon Sep 9 14:52:29 UTC 2013 - pgajdos@suse.com
- updated to 0.8.0:
* Fix: hash table growth (for small tables) should be limited
* Fix: doc/examples cross-build
* Introduce URCU_INLINE_SMALL_FUNCTIONS
* etc., see ChangeLog
- gpg-offline
-------------------------------------------------------------------
Wed Mar 27 07:56:12 UTC 2013 - pgajdos@suse.com
- updated to 0.7.6:
* Discourage use of pthread_atfork() for call_rcu handlers
* Fix call_rcu fork handling
* test: fork handling
* 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
-------------------------------------------------------------------
Tue Nov 20 10:59:25 UTC 2012 - pgajdos@suse.com
- updated to 0.7.5:
* 19cf3ae Fix: call_rcu list corruption on teardown
* 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
-------------------------------------------------------------------
Wed Aug 29 10:55:07 UTC 2012 - cfarrell@suse.com
- license update: LGPL-2.1+ and MIT and GPL-2.0+
See LICENSE file
-------------------------------------------------------------------
Tue Aug 28 06:23:06 UTC 2012 - pascal.bleser@opensuse.org
- update to 0.7.4:
* Fix: rculfhash should be offline while waiting for resize to complete
* 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
* 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
- changes from 0.7.1:
* fix: uatomic_set return value compile fix for non-x86 arch
- changes from 0.7.0:
* Update return value of "set" operations
* rculfhash: document implied memory barriers
* rculfhash: Ensure future-proof memory barrier semantic consistency
* uatomic: add memory barrier API for and/or/add/sub/inc/sub
* rculfhash: fix: race between replace and del operations
* rculfhash: replace unneeded rcu_dereference by CMM_LOAD_SHARED
* rculfhash: check malloc NULL pointer
* Fix uatomic sign cast
* Remove unused jhash.h file
* RCU lock-free hash table: implement cds_lfht_is_node_deleted()
* rculfhash: remove an invocation of bit_reverse_ulong() when adding
* cds_lfht_replace: add checks for old/new node hash/value match
* 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
* simplify the deletion for bucket node
* 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
-------------------------------------------------------------------
Wed May 23 11:08:07 UTC 2012 - jengelh@inai.de
- Exclusively ship shared library
- Strip redundant tags/sections from specfile
-------------------------------------------------------------------
Thu Mar 29 10:59:43 CET 2012 - pascal.bleser@opensuse.org
- initial version (0.6.7)