RFR: 8302206: Factor out duplicate G1VerificationClosure [v2]

Albert Mingkun Yang ayang at openjdk.org
Mon Feb 13 10:42:26 UTC 2023


On Mon, 13 Feb 2023 10:11:54 GMT, Thomas Schatzl <tschatzl at openjdk.org> wrote:

>> Hi all,
>> 
>>   can I have reviews for this cleanup that merges `G1VerifyLiveClosure` from `g1FullGCMarker.cpp` and `VerifyLiveClosure` from `heapRegion.cpp` into a single one as they are virtually identical.
>> 
>> There is probably one change that needs some discussion, and that is about changing the type and meaning of `G1MaxVerifyFailures`: after changing the type of `G1VerificationClosure::_num_failures` to uint, the given comparison does not work any more due to differing types.
>> However the change of the default value to `0` meaning "show all messages" does not seem too bad: even before this change, a value of `0` at least showed one failure as this check (now it shows all messages) is located after the error printing in the closures.
>> It's a develop flag too, so instead of casting around I chose to simply change the meaning.
>> 
>> Testing: gha
>> 
>> Thanks,
>>   Thomas
>
> Thomas Schatzl has updated the pull request incrementally with one additional commit since the last revision:
> 
>   kbarrett review, indentation

> However the change of the default value to 0 meaning "show all messages" does not seem too bad: even before this change, a value of 0 at least showed one failure as this check (now it shows all messages) is located after the error printing in the closures.

I find `*Max* == 0` == `show all msg` too surprising. Is it possible to impl the most obvious interpretation, 0 means no msgs at all?

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

PR: https://git.openjdk.org/jdk/pull/12511


More information about the hotspot-gc-dev mailing list