RFR: 8293650: Shenandoah: Support archived heap objects [v5]

Y. Srinivas Ramakrishna ysr at openjdk.org
Thu Aug 15 02:14:55 UTC 2024


On Thu, 15 Aug 2024 01:48:59 GMT, Y. Srinivas Ramakrishna <ysr at openjdk.org> wrote:

>> Aleksey Shipilev has updated the pull request incrementally with one additional commit since the last revision:
>> 
>>   Wrap the whole thing in CDS define
>
> src/hotspot/share/gc/shenandoah/shenandoahHeap.cpp line 2503:
> 
>> 2501:   // We need to make sure it looks like regular allocation to the rest of GC.
>> 2502: 
>> 2503:   // CDS code would guarantee no objects straggle multiple regions, as long as
> 
> straggle -> straddle

Noob question: can one prove that CDS archived objects will never exceed the size of a region? Or does the archive writer refuse to create a dump in that case? I will assume the latter for the purposes of the following remark:

When you walk over the objects allocated in the verifier loop further below at lines 2539-2543, I wonder if you should check that you always have a legitimate object starting and ending each alignment boundary, just to be super-paranoid.

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

PR Review Comment: https://git.openjdk.org/jdk/pull/20468#discussion_r1717791226


More information about the shenandoah-dev mailing list