RFR (XS): Fix DerivedPointerTable handling when scanning roots twice in init-evac phase

Roman Kennke rkennke at redhat.com
Tue Mar 7 10:47:30 UTC 2017


With my last fix, we're potentially scanning the roots twice: once for
the initial-evacuation+update-refs, and if we run into OOM, another time
to update remaining refs. This 2nd scan can cause problems in
DerivedPointerTable: it asserts that every root is only visited once.
This patch fixes it by enclosing each pass into DerivedPointerTable
separately.

http://cr.openjdk.java.net/~rkennke/fixdpt/webrev.00/

Ok?

Roman




More information about the shenandoah-dev mailing list