RFR: 8370039: GenShen: array copy SATB barrier improvements [v3]

William Kemper wkemper at openjdk.org
Tue Nov 18 17:04:09 UTC 2025


On Mon, 17 Nov 2025 14:10:33 GMT, Aleksey Shipilev <shade at openjdk.org> wrote:

>> William Kemper has updated the pull request incrementally with one additional commit since the last revision:
>> 
>>   Revert "We can also filter out old when striclty marking young"
>>   
>>   This reverts commit c53c4f23f4401785e1049494b6c4e4b92f9a5701.
>
> src/hotspot/share/gc/shenandoah/shenandoahBarrierSet.inline.hpp line 428:
> 
>> 426: 
>> 427:   const char gc_state = ShenandoahThreadLocalData::gc_state(Thread::current());
>> 428:   if ((gc_state & ShenandoahHeap::MARKING) != 0) {
> 
> A question on sequencing. Can we have marking and update-refs at the same time? If so, should update-refs happen first, and then marking should be doing the walk over (fixed-up) objects?

I can change the sequencing, though I'm not sure it's necessary. Old marking shouldn't be following references into the young generation, so updating references in old that point to young shouldn't matter to old marking.

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

PR Review Comment: https://git.openjdk.org/jdk/pull/28183#discussion_r2538998438


More information about the hotspot-gc-dev mailing list