RFR: 8351091: Shenandoah: global marking context completeness is not accurately maintained [v4]

William Kemper wkemper at openjdk.org
Fri Mar 7 19:19:53 UTC 2025


On Thu, 6 Mar 2025 22:25:29 GMT, Y. Srinivas Ramakrishna <ysr at openjdk.org> wrote:

>> Xiaolong Peng has updated the pull request incrementally with three additional commits since the last revision:
>> 
>>  - Remove ShenandoahHeap::complete_marking_context(ShenandoahHeapRegion* region)
>>  - Revert "complete_marking_context should guarantee mark is complete"
>>    
>>    This reverts commit 2004973965ea0e617cf9e5fc45be24f0e06e90a1.
>>  - complete_marking_context should guarantee mark is complete
>
> src/hotspot/share/gc/shenandoah/heuristics/shenandoahHeuristics.cpp line 123:
> 
>> 121: #ifdef ASSERT
>> 122:       bool reg_live = region->has_live();
>> 123:       bool bm_live = heap->active_generation()->complete_marking_context()->is_marked(cast_to_oop(region->bottom()));
> 
> Apropos of another comment, if we really want to keep a delegating method in `ShenandoahHeap`, why not use `heap->complete_marking_context()` as a synonym for `heap->active_generation()->complete_marking_context()` ?

This makes sense to me.

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

PR Review Comment: https://git.openjdk.org/jdk/pull/23886#discussion_r1985570114


More information about the shenandoah-dev mailing list