OpenJDK / jdk / jdk
changeset 54664:5ddea9d48649
8223184: Shenandoah: Missing roots in SRP::process_all_roots_slow
Reviewed-by: shade
author | zgu |
---|---|
date | Wed, 01 May 2019 10:12:51 -0400 |
parents | f03d5a093093 |
children | f14a826e3c2e |
files | src/hotspot/share/gc/shenandoah/shenandoahRootProcessor.cpp |
diffstat | 1 files changed, 8 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- a/src/hotspot/share/gc/shenandoah/shenandoahRootProcessor.cpp Wed May 01 08:56:38 2019 -0400 +++ b/src/hotspot/share/gc/shenandoah/shenandoahRootProcessor.cpp Wed May 01 10:12:51 2019 -0400 @@ -123,6 +123,14 @@ ObjectSynchronizer::oops_do(oops); SystemDictionary::oops_do(oops); + AlwaysTrueClosure always_true; + WeakProcessor::weak_oops_do(&always_true, oops); + JvmtiExport::weak_oops_do(&always_true, oops); + + if (ShenandoahStringDedup::is_enabled()) { + ShenandoahStringDedup::oops_do_slow(oops); + } + // Do thread roots the last. This allows verification code to find // any broken objects from those special roots first, not the accidental // dangling reference from the thread root.