RFR: 8358735: GenShen: bug in #undef'd code in block_start()

Kelvin Nilsen kdnilsen at openjdk.org
Fri Sep 26 10:23:14 UTC 2025


When scanning a range of dirty cards within the GenShen remembered set, we need to find the object that spans the beginning of the left-most dirty card.  The existing code is not reliable following class unloading.

The new code uses the marking context when it is available to determine the location of live objects that reside below TAMS within each region.  Above TAMS, all objects are presumed live and parsable.

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

Commit messages:
 - cleanup code for review
 - Fix order of include files
 - fix white space
 - disable for debug build, alphabetic order for includes
 - add explicit typecast to avoid compiler warning message
 - Remove troublesome assert that assumes lock is held
 - Merge remote-tracking branch 'jdk/master' into finish-block-start
 - Add handling for first_object_start() past end of range
 - Revert extraneous changes
 - Add special handling above TAMS
 - ... and 15 more: https://git.openjdk.org/jdk/compare/01d7554b...76979421

Changes: https://git.openjdk.org/jdk/pull/27353/files
  Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=27353&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8358735
  Stats: 849 lines in 11 files changed: 812 ins; 5 del; 32 mod
  Patch: https://git.openjdk.org/jdk/pull/27353.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/27353/head:pull/27353

PR: https://git.openjdk.org/jdk/pull/27353


More information about the hotspot-gc-dev mailing list