RFR 8223774: Shenandoah: Refactor ShenandoahRootProcessor and family

Aleksey Shipilev shade at redhat.com
Fri May 17 11:59:34 UTC 2019


On 5/16/19 5:09 PM, Zhengyu Gu wrote:
> Updated: http://cr.openjdk.java.net/~zgu/JDK-8223774/webrev.02/

I like it.

*) No, this block should be in ShenandoahTraversalGC*Heuristics*, not in ShenandoahTraversalGC
itself, look:
http://hg.openjdk.java.net/jdk/jdk/file/23837d614c17/src/hotspot/share/gc/shenandoah/heuristics/shenandoahTraversalHeuristics.cpp#l36

 313   // Traversal does not support concurrent code root scanning
 314   FLAG_SET_DEFAULT(ShenandoahConcurrentScanCodeRoots, false);

*) One more naming suggestion (see if it makes sense!). Current hierarchy is:

 ShenandoahRootProcessingPhase
   -> ShenandoahRootProcessor
   -> ShenandoahRootEvacuator
   -> ShenandoahRootUpdater
   -> ShenandoahRootAdjuster

It leads to awkward superclass name. Maybe we should rename ShenandoahRootProcessor to reflect what
it does to also match Evacuator/Updater/Adjuster? This frees ShenandoahRootProcessor to become the
superclass. For example:

 ShenandoahRootProcessor
   -> ShenandoahRootScanner [Does it *only* scan, though? Dunno.]
   -> ShenandoahRootEvacuator
   -> ShenandoahRootUpdater
   -> ShenandoahRootAdjuster

-Aleksey


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


More information about the hotspot-gc-dev mailing list