RFR: 8371923: Update LockFreeStack for Atomic<T> [v2]
Kim Barrett
kbarrett at openjdk.org
Tue Nov 18 10:48:57 UTC 2025
> Please review this change to the `LockFreeStack` utility to allow clients to
> use `Atomic<T>` as the type of the "next" member used in the linked-list
> representation of the stack. It also continues to allow clients to use the old
> (pre-`Atomic<T>`) form where the "next" member is volatile. This allows
> clients to be updated incrementally after this change, rather than requiring
> all clients to be updated in conjunction with the update of this class. Once
> all clients have been updated, support for the old form can be removed.
>
> The associated gtests have been updated to use `Atomic<T>`, with testing of
> the old form is no longer being done. The non-updated uses provide some
> testing, and that's all expected to go away soon. So parameterizing the gtests
> for both forms seems like a bunch of work that will just be deleted soon, with
> very little benefit.
>
> Testing: mach5 tier1
Kim Barrett has updated the pull request with a new target base due to a merge or a rebase. The incremental webrev excludes the unrelated changes brought in by the merge/rebase. The pull request contains three additional commits since the last revision:
- Merge branch 'master' into lock-free-stack-allows-new-atomic
- rename next_access to next_accessor
- LockFreeStack supports Atomic<T>
-------------
Changes:
- all: https://git.openjdk.org/jdk/pull/28329/files
- new: https://git.openjdk.org/jdk/pull/28329/files/28b4d2a2..58c4ee09
Webrevs:
- full: https://webrevs.openjdk.org/?repo=jdk&pr=28329&range=01
- incr: https://webrevs.openjdk.org/?repo=jdk&pr=28329&range=00-01
Stats: 11620 lines in 216 files changed: 8511 ins; 1590 del; 1519 mod
Patch: https://git.openjdk.org/jdk/pull/28329.diff
Fetch: git fetch https://git.openjdk.org/jdk.git pull/28329/head:pull/28329
PR: https://git.openjdk.org/jdk/pull/28329
More information about the hotspot-dev
mailing list