RFR: Pre-evac JVMTI roots
Roman Kennke
rkennke at redhat.com
Thu Nov 1 00:26:49 UTC 2018
Good! Go!
Thanks, Roman
> JVMTI's JvmtiTagHashmap is a hashtable, and its hash value is derived
> from key (an oop)'s address. Because GC can move oops, so the hashtable
> has to rehash itself every time the table is walked vs.
> JvmtiExport::weak_oops_do().
>
> To maintain table's to-space invariant, so that the hash value derived
> from key oop should match later query key, which is always a to-space
> oop, we need to pre-evacuate the table.
>
> Webrev:
> http://cr.openjdk.java.net/~zgu/shenandoah/pre_evac_jvmti_roots/webrev.00/index.html
>
>
> This patch, along with early "Avoid write barrier during full GC",
> clears vmTestbase/nsk/jdi test suite.
>
> Test:
> tier3_gc_shenandoah and vmTestbase/nsk/jdi (fastdebug and release)
>
> Thanks,
>
> -Zhengyu
More information about the shenandoah-dev
mailing list