RFR: 8335217: Fix memory ordering in ClassLoaderData::ChunkedHandleList [v5]
    David Holmes 
    dholmes at openjdk.org
       
    Wed Jul  3 06:54:24 UTC 2024
    
    
  
On Wed, 3 Jul 2024 06:46:37 GMT, David Holmes <dholmes at openjdk.org> wrote:
>> Zhengyu Gu has updated the pull request incrementally with one additional commit since the last revision:
>> 
>>   Revert destructor change
>
> src/hotspot/share/classfile/classLoaderData.cpp line 207:
> 
>> 205:   Chunk* chunk = Atomic::load_acquire(&_head);
>> 206:   while (chunk != nullptr) {
>> 207:     count += Atomic::load(&chunk->_size);
> 
> I don't think this is necessary - there is no concurrent write of this chunk's size possible whilst we read it.
Apologies, yes there is. We publish `_head` and then update its `_size` after the fact. That has a bad smell about it IMO.
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/19919#discussion_r1663609554
    
    
More information about the hotspot-runtime-dev
mailing list