There are a few bugs in JDK-8338912 that we discovered in Leyden that uses multiple segments: a) root_index in ArchiveHeapWriter::copy_roots_to_buffer is initialized to zero for every segment, so all segments have the same set of roots; b) HeapShared::get_root and friends compute segment and internal indices modulo _byte_ size, while they should instead do it modulo _element_ size.
This does not affect current mainline directly, since we run with a single segment the overwhelming majority of the time.
This does not affect current mainline directly, since we run with a single segment the overwhelming majority of the time.
- relates to
-
JDK-8338912 CDS: Segmented roots array
-
- Resolved
-
- links to
-
Commit(master) openjdk/jdk/c6e7e551
-
Review(master) openjdk/jdk/21221