RFR: Workaround C1 ConstantOopWriteValue bug
Aleksey Shipilev
shade at redhat.com
Tue Nov 14 17:58:00 UTC 2017
http://cr.openjdk.java.net/~shade/shenandoah/workaround-jni-acmp/webrev.01/
This is the workaround for the upstream C1 bug: it calls heap-aware code in improper thread state.
This fails fairly reliably with Shenandoah, because on those paths we have obj_equals that does read
barriers, and it crashes the compiler code that walks the heap. This also happens during Full GCs
mostly, because the pointers are aggressively changing there.
Link to upstream discussion:
http://mail.openjdk.java.net/pipermail/hotspot-compiler-dev/2017-November/027546.html
The change is done for the ease of backporting: we isolate Shenandoah-specific path. If/when
upstream fix arrives, we can partially undo this workaround.
Testing: hotspot_gc_shenandoah (fastdebug), stress configurations that used to fail
Thanks,
-Aleksey
More information about the shenandoah-dev
mailing list