RFR: 8258742: Move PtrQueue reset to PtrQueueSet subclasses

Kim Barrett kbarrett at openjdk.java.net
Sun Jan 17 13:21:57 UTC 2021


Please remove this change to the PtrQueue hierarchy, changing queue reset
from an intrinsic operation of the queue to an operation the qset performs
on a queue.  This is another piece of the refactoring being done under
JDK-8258251, separated out for easier review.

After the refactoring of queue reset, PtrQueue::is_empty and PtrQueue::size
are no longer used, so are removed.  Further, PtrQueue::{set_}index_in_bytes
are removed, directly using _index instead.

A less obvious part of the change is in the G1 remark task and Shenandoah
final marking task.  The threads walk performed by these no longer directly
processes the partial per-thread SATB buffers.  Instead they just flush the
queues for later completed buffer processing.

Testing:
mach5 tier1
local (linux-x64) hotspot:tier1 with -XX:+UseShenandoahGC

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

Commit messages:
 - update shenandoah
 - remove pq index_in_bytes
 - remove pq size
 - remove pq is_empty
 - move reset

Changes: https://git.openjdk.java.net/jdk/pull/2115/files
 Webrev: https://webrevs.openjdk.java.net/?repo=jdk&pr=2115&range=00
  Issue: https://bugs.openjdk.java.net/browse/JDK-8258742
  Stats: 89 lines in 9 files changed: 17 ins; 45 del; 27 mod
  Patch: https://git.openjdk.java.net/jdk/pull/2115.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk pull/2115/head:pull/2115

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



More information about the hotspot-gc-dev mailing list