RFR: JDK-8209118: Abstract SATBMarkQueueSet's ThreadLocalData access
Roman Kennke
rkennke at redhat.com
Wed Aug 8 09:23:23 UTC 2018
Currently, SATBMarkQueueSet directly accesses G1SATBMarkQueue for
getting to thread-local SATBMarkQueue. This should be abstract in order
to enable SATBMarkQueue stuff to be used by other GCs.
I propose to achieve that by adding a (pure) virtual method:
satb_queue_for_thread(JavaThread* const t)
to SATBMarkQueueSet, which would have to be implemented by GC specific
subclasses. One side effect is that handle_zero_index_for_thread() would
have to move to subclass too (which is fine for Shenandoah, we're not
using it at all. Maybe this would require some consolidation in the
future for G1 on the platforms that use it..?)
Bug:
https://bugs.openjdk.java.net/browse/JDK-8209118
Webrev:
http://cr.openjdk.java.net/~rkennke/JDK-8209118/webrev.00/
Testing: hotspot/jtreg:tier1 (fastdebug)
Can I please get reviews?
Thanks,
Roman
More information about the hotspot-gc-dev
mailing list