RFR: 8214201: Make PtrQueueSet completed buffer list private

Kim Barrett kim.barrett at oracle.com
Wed Dec 26 20:45:02 UTC 2018


> On Dec 19, 2018, at 7:39 AM, Stefan Johansson <stefan.johansson at oracle.com> wrote:
> 
> 
> 
> On 2018-12-04 11:04, Thomas Schatzl wrote:
>> Hi Kim,
>> On Mon, 2018-12-03 at 23:06 -0500, Kim Barrett wrote:
>>>> On Dec 3, 2018, at 3:19 PM, Kim Barrett <kim.barrett at oracle.com>
>>>> wrote:
>>>>> Maybe move PtrQueueSet::_notify_when_complete and _all_active
>>>>> after the _max_completed_buffers and the
>>>>> _completed_buffers_padding; the
>>>>> latter are directly related to buffer completion started above
>>>>> the _all_active, while the others seem to be more related to
>>>>> thread management. But it is fine to keep it as is too.
>>>> 
>>>> _notify_when_complete is related to
>>>> _process_completed_buffers_threshold, in that notification is done
>>>> when the notify flag is true and the number of buffers exceeds the
>>>> threshold.
>>>> 
>>>> But _all_active is indeed completely unrelated to the others. And
>>>> if I'm not misremembering, the whole active/inactive distinction is
>>>> only relevant to the SATBMarkQueue(Set), with DirtyCardQueue(Set)
>>>> just always being "active", so maybe it shouldn't be at the
>>>> PtrQueue(Set) layer at all.  But doing anything about that would be
>>>> for some future RFE.  (Note that I have more changes coming in this
>>>> area, some at least partially developed.  But moving these
>>>> declarations around a bit bit here looks pretty harmless to that
>>>> work.)
>>> 
>>> After looking at it again, I realized that all of these data members
>>> except _all_active could now be made private, so I've done that.
>>> 
>>> (Doing so involved not using the SizeTFlagSetting helper in
>>> concatenate_logs after all.)
>>> 
>>> Also made the assert helper function private.
>> Looks good. Thanks for the changes.
> Looks good to me too,
> StefanJ
>> Thomas

Thanks, Stefan.




More information about the hotspot-gc-dev mailing list