RFR [8]: Degenerated GC
Aleksey Shipilev
shade at redhat.com
Wed Feb 28 11:10:15 UTC 2018
http://cr.openjdk.java.net/~shade/shenandoah/8u-degenerated-gc/webrev.01/
I have finally managed to backport Degenerated GC to sh/jdk8u, and this was the only outstanding
feature to backport. The failures I mentioned before were caused by special handling for
SurrogateLockerThread that is 8u-only [1]. When that is resolved [2], the tests start to pass.
Testing: hotspot_gc_shenandoah {fastdebug|release}, specjvm runs with verification
Thanks,
-Aleksey
[1] http://hg.openjdk.java.net/shenandoah/jdk8u/hotspot/rev/8716f1b84d2f
[2] Because SLT handling in handle_alloc_failure_evac drops evac_in_progress, this is the fix:
if (heap->is_evacuation_in_progress()) {
heap->entry_evac();
- if (check_cancellation_or_degen(ShenandoahHeap::_degenerated_evac)) return;
}
+ // Capture evacuation failures that might have happened during pre-evac in final mark.
+ // In this case, SLT handling would drop evac-in-progress, and we miss it if we are
+ // checking under the branch above.
+ if (check_cancellation_or_degen(ShenandoahHeap::_degenerated_evac)) return;
More information about the shenandoah-dev
mailing list