RFR: JDK-8222227: Shenandoah: Fix Traversal GC weak roots handling in final-traversal pause

Roman Kennke rkennke at redhat.com
Tue Apr 9 20:30:42 UTC 2019


We currently clean weak roots only when weak-references are processed in
Traversal GC. This is wrong, because it should be independent whether or
not it's doing reference-processing.
Also, (weak) roots need to be updated and cleaned before classes get
unloaded (currently), because this is how class-unloaded detects
unreachable classes.
With all this, we no longer need to run class-unloading and
reference-processing every cycle, which covered up those bugs.

Bug:
https://bugs.openjdk.java.net/browse/JDK-8222227
Webrev:
http://cr.openjdk.java.net/~rkennke/JDK-8222227/webrev.02/

Testing: hotspot_gc_shenandoah

Roman

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 801 bytes
Desc: OpenPGP digital signature
URL: <https://mail.openjdk.org/pipermail/hotspot-gc-dev/attachments/20190409/a0bbb311/signature.asc>


More information about the hotspot-gc-dev mailing list