On Tue, 2 May 2023 15:53:17 GMT, Thomas Schatzl <tscha...@openjdk.org> wrote:

>> Hi all,
>> 
>>   please review this change that removes the pinned tag from `HeapRegion`.
>> 
>> So that "pinned" tag for G1 heap regions indicates that the region should 
>> not move during (young) gc. This applies to now removed archive regions and 
>> humongous objects/regions.
>> 
>> With "real" g1 region pinning to deal with gclocker in g1 once and for all 
>> upcoming we need a refcount, a single bit is not sufficient anymore. Further 
>> there will be a naming conflict as this kind of "pinning" is different to g1 
>> region pinning "pinning". The former indicates "contents can not be moved, 
>> but can be reclaimed", while the latter means "contents can not be moved and 
>> not reclaimed".
>> 
>> The (current) pinned flag is surprisingly little used, only for policy 
>> decisions.
>> 
>> The suggestion this change implements is to remove the "pinned" tag as it 
>> is, and reserve it for future g1 region pinning (that needs to store the 
>> pinning attribute differently as a refcount anyway).
>> 
>> Testing: tier1-3, gha
>> 
>> Thanks,
>>   Thomas
>
> Thomas Schatzl has updated the pull request with a new target base due to a 
> merge or a rebase. The pull request now contains seven commits:
> 
>  - Merge branch 'master' into 8306836-remove-pinned-tag
>  - remove is_young_gc_movable in full gc code
>  - cplummer review
>  - ayang review
>  - Fix hsdb
>  - compilation fixes
>  - Initial implementation

I removed the `young_gc_is_movable()` predicate; it is probably the wrong time 
to introduce more abstract concepts like this in this change.

Moved off the refactoring of the `G1CollectionSetChooser::should_add()` and its 
caller to sometime else too - it's not relevant to this change either.

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

PR Comment: https://git.openjdk.org/jdk/pull/13643#issuecomment-1531806113

Reply via email to