On Tue, 19 Nov 2024 17:31:15 GMT, Aleksey Shipilev <sh...@openjdk.org> wrote:
>> William Kemper has updated the pull request with a new target base due to a >> merge or a rebase. The pull request now contains 510 commits: >> >> - Merge branch 'merge-latest' into great-genshen-pr-redux >> - Use new CompactHeader forwarding APIs in generational mode >> - Merge remote-tracking branch 'jdk/master' into merge-latest >> - Merge >> - 8343649: Shenandoah: ShenandoahEvacInfo event does not follow JFR >> guidelines >> >> Reviewed-by: wkemper >> - Merge >> - 8343227: GenShen: Fold resource mark into management of preselected >> regions >> >> Reviewed-by: kdnilsen >> - Merge openjdk/jdk tip into great-genshen-pr-redux >> - Merge remote-tracking branch 'jdk/master' into merge-latest >> - Merge remote-tracking branch 'jdk/master' into merge-latest >> - ... and 500 more: https://git.openjdk.org/jdk/compare/889f9062...5e02b5d8 > > src/hotspot/share/gc/shenandoah/shenandoahMarkingContext.cpp line 44: > >> 42: for (size_t idx = 0; idx < num_regions; idx++) { >> 43: ShenandoahHeapRegion* r = heap->get_region(idx); >> 44: if (r->is_affiliated() && heap->is_bitmap_slice_committed(r) && >> !is_bitmap_clear_range(r->bottom(), r->end())) { > > I don't understand this for single gen mode. In that mode `is_affiliated() == > false` always, right? So this check never passes, and `is_bitmap_clear` > always returns `true`? No, in single gen mode regions that are not `FREE` are affiliated with `YOUNG`. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21273#discussion_r1849165775