RFR: 8323631: JfrTypeSet::write_klass can enqueue a CLD klass that is unloading

Markus Grönlund mgronlun at openjdk.org
Mon Jan 15 22:50:28 UTC 2024


Greetings,

[JDK-8316241](https://bugs.openjdk.org/browse/JDK-8316241) introduced a bug where a CLD klass that may be in the process of being unloaded can erroneously get enqueued (because it does not go through the proper registration for unloading). This is a result of the attempt to make artefact tagging deep, by transitively marking (and enqueuing) CLD klasses.

However, during class unloading, it is possible that a CLD klass is itself being unloaded. There must be a check for this situation so that klasses being unloaded are not enqueued.

Testing: jdk_jfr, stress testing

Thanks
Markus

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

Commit messages:
 - 8323631

Changes: https://git.openjdk.org/jdk/pull/17434/files
 Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=17434&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8323631
  Stats: 58 lines in 1 file changed: 32 ins; 26 del; 0 mod
  Patch: https://git.openjdk.org/jdk/pull/17434.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/17434/head:pull/17434

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


More information about the hotspot-jfr-dev mailing list