RFR: 8305880: Loom: Avoid putting stale object pointers in oops

Stefan Karlsson stefank at openjdk.org
Wed Apr 12 06:32:30 UTC 2023


Generational ZGC has extra verification code for oops, which trigger asserts when it finds stale oops. We have cleaned away some usages of stale oops in the upstream repository (openjdk/jdk), but there are still a couple left in the Loom code. I propose that we rewrite the code, to pave the way for Generational ZGC.

I've tested this by running these patches on top of openjdk/fibers + ZGC. I've also tested this with Skynet + Generational ZGC, where these issues where first found.

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

Commit messages:
 - Review Ron
 - Introduce derived_base type
 - Don't create stale oops in DerivedPointersSupport::relativize
 - Don't create stale oops in ~SafepointOp

Changes: https://git.openjdk.org/jdk/pull/13439/files
 Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=13439&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8305880
  Stats: 48 lines in 10 files changed: 9 ins; 2 del; 37 mod
  Patch: https://git.openjdk.org/jdk/pull/13439.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/13439/head:pull/13439

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


More information about the hotspot-dev mailing list