RFR: Simplify JNI critical support
Roman Kennke
rkennke at redhat.com
Wed Sep 21 11:10:37 UTC 2016
This implements Zhengyu's idea to simply pin heap regions that contain
active JNI critical arrays, i.e. those regions would not enter the
collection set.
This makes our JNI critical region handling much simpler. We no longer
have to bail and retry on active critical regions (like other GCs).
Most importantly, we can get rid of the complicated locking dance
between Java threads, the VM thread and GC threads that has plagued us
in the past.
I also added a regression test to verify this is handled correctly,
together with some infrastructure to build & run Shenandoah tests only
by invoking:
make test TEST="hotspot_fast_gc_shenandoah"
http://cr.openjdk.java.net/~rkennke/jni_critical/webrev.00/
Ok to push?
Roman
More information about the shenandoah-dev
mailing list