# HG changeset patch # User stefank # Date 1574690223 -3600 # Node ID 58f842703bc578d44115ee1bc98edcb5de24deb4 # Parent 1647ed87bf1ef2d205571b19ad5e0a8241933b22 8234009: ZGC: Move resurrection unblock to before the _unload.purge() call Reviewed-by: pliden, eosterlund diff -r 1647ed87bf1e -r 58f842703bc5 src/hotspot/share/gc/z/zHeap.cpp --- a/src/hotspot/share/gc/z/zHeap.cpp Mon Nov 25 14:56:15 2019 +0100 +++ b/src/hotspot/share/gc/z/zHeap.cpp Mon Nov 25 14:57:03 2019 +0100 @@ -352,12 +352,12 @@ ZRendezvousClosure cl; Handshake::execute(&cl); + // Unblock resurrection of weak/phantom references + ZResurrection::unblock(); + // Purge stale metadata and nmethods that were unlinked _unload.purge(); - // Unblock resurrection of weak/phantom references - ZResurrection::unblock(); - // Enqueue Soft/Weak/Final/PhantomReferences. Note that this // must be done after unblocking resurrection. Otherwise the // Finalizer thread could call Reference.get() on the Finalizers