RFR: 8270842: G1: Only young regions need to redirty outside references in remset.

Thomas Schatzl tschatzl at openjdk.java.net
Wed Aug 4 16:20:30 UTC 2021


On Wed, 21 Jul 2021 02:13:38 GMT, Hamlin Li <mli at openjdk.org> wrote:

> For evac failure objects in non-young regions (old) of cset, the outside reference remset already recorded in the dirty queue, we only needs to do it for obj in young regions

The comment in `RemoveSelfForwardPtrObjClosure::do_object()` before the change needs updating. It's completely incomprehensible to me (at this point) and mostly refers to very old behavior. Please change before pushing.

Something like:


      // During evacuation failure we do not record inter-region
      // references referencing regions that need a remembered set
      // update originating from young regions (including eden) that
      // failed evacuation. Make up for that omission now by rescanning
      // these failed objects.

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

Changes requested by tschatzl (Reviewer).

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



More information about the hotspot-gc-dev mailing list