On Wed, 30 Oct 2024 19:02:05 GMT, Coleen Phillimore <cole...@openjdk.org> wrote:

>> src/hotspot/share/runtime/continuationFreezeThaw.cpp line 1411:
>> 
>>> 1409:     // zero out fields (but not the stack)
>>> 1410:     const size_t hs = oopDesc::header_size();
>>> 1411:     oopDesc::set_klass_gap(mem, 0);
>> 
>> Why, bug fix or cleanup?
>
> This might confuse the change for JEP 450 since with CompactObjectHeaders 
> there's no klass_gap, so depending on which change goes first, there will be 
> conditional code here. Good question though, it looks like we only ever want 
> to copy the payload of the object.

If I recall correctly this was a bug where one of the stackChunk fields was 
allocated in that gap, but since we didn't zeroed it out it would start with 
some invalid value. I guess the reason why we are not hitting this today is 
because one of the fields we do initialize (sp/bottom/size) is being allocated 
there, but with the new fields I added to stackChunk that is not the case 
anymore.

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

PR Review Comment: https://git.openjdk.org/jdk/pull/21565#discussion_r1823580273

Reply via email to