RFR: 8332913: GenShen: Restore shared update refs iterator

Y. Srinivas Ramakrishna ysr at openjdk.org
Fri May 24 19:10:19 UTC 2024


On Fri, 24 May 2024 17:55:24 GMT, William Kemper <wkemper at openjdk.org> wrote:

> Turns out, this iterator is shared between concurrent and degenerated GC cycles. It should not have been made into a local variable.

LGTM. Minor comments on an assert.

src/hotspot/share/gc/shenandoah/shenandoahHeap.cpp line 2384:

> 2382:     workers()->run_task(&task);
> 2383:   }
> 2384:   assert(cancelled_gc() || !update_refs_iterator.has_next(), "Should have finished update references");

Should one keep this assert, but have it refer to the `_update_refs_iterator` field that you restored in shHeap?

-------------

Marked as reviewed by ysr (Committer).

PR Review: https://git.openjdk.org/shenandoah/pull/439#pullrequestreview-2077654097
PR Review Comment: https://git.openjdk.org/shenandoah/pull/439#discussion_r1613900742


More information about the shenandoah-dev mailing list