RFR: 8263551: Provide shared lock-free FIFO queue implementation [v3]

Man Cao manc at openjdk.java.net
Tue Mar 30 07:49:00 UTC 2021


> Hi all,
> 
> Could anyone review this change that is mainly code motion? It creates a generalized lock-free queue implementation based on G1DirtyCardQueueSet::Queue, which will be used by JDK-8236485 in the future.
> 
> The shared LockFreeQueue is similar to the existing LockFreeStack. The notable difference is that the LockFreeQueue has an additional template parameter for whether to use GlobalCounter::CriticalSection to avoid ABA problem.
> 
> -Man

Man Cao has updated the pull request incrementally with one additional commit since the last revision:

  Changed to try_pop() and eliminated conditional critical section.

-------------

Changes:
  - all: https://git.openjdk.java.net/jdk/pull/2986/files
  - new: https://git.openjdk.java.net/jdk/pull/2986/files/91f22bbd..7035ff56

Webrevs:
 - full: https://webrevs.openjdk.java.net/?repo=jdk&pr=2986&range=02
 - incr: https://webrevs.openjdk.java.net/?repo=jdk&pr=2986&range=01-02

  Stats: 247 lines in 7 files changed: 100 ins; 88 del; 59 mod
  Patch: https://git.openjdk.java.net/jdk/pull/2986.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk pull/2986/head:pull/2986

PR: https://git.openjdk.java.net/jdk/pull/2986



More information about the hotspot-gc-dev mailing list