RFR: 8361706: Parallel weak klass link cleaning does not clean out previous klasses
Thomas Schatzl
tschatzl at openjdk.org
Fri Jul 11 10:46:50 UTC 2025
Hi all,
please review this fix to parallel weak klass link cleaning.
`KlassCleaningTask::work()` misses cleaning out previous versions of klasses (created by JVMTI class redefinition) as the regular single-threaded variant would do when calling `Klass::clean_weak_klass_links()` with `clean_live_klasses = true`.
The fix moves the cleaning of weak klass links for previous versions of the klass into `InstanceKlass::clean_weak_instanceklass_links()`.
Testing: gha, tier1-5, many runs of `vmTestbase/nsk/jvmti/RedefineClasses/StressRedefine/TestDescription.java`(with JDK-8361952 also out for review)
Thanks,
Thomas
-------------
Commit messages:
- * remove patch for JDK-8361952
- * working version, do not recursively clean out
- * another attempt
- 8361706
Changes: https://git.openjdk.org/jdk/pull/26263/files
Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=26263&range=00
Issue: https://bugs.openjdk.org/browse/JDK-8361706
Stats: 24 lines in 4 files changed: 12 ins; 10 del; 2 mod
Patch: https://git.openjdk.org/jdk/pull/26263.diff
Fetch: git fetch https://git.openjdk.org/jdk.git pull/26263/head:pull/26263
PR: https://git.openjdk.org/jdk/pull/26263
More information about the hotspot-gc-dev
mailing list