RFR: 8235427: Remove unnecessary parameters from G1CollectedHeap::free_region and HeapRegion::hr_clear
stefan.johansson at oracle.com
Tue Dec 10 11:27:34 UTC 2019
Please review this cleanup to get rid of some unnecessary boolean passing.
While reviewing the fix for JDK-8165443 we realized that some boolean
parameters passed to G1CollectedHeap::free_region always had the same
values and could therefore be removed. When looking a bit closer it
turns out even more parameters can be skipped.
The two things that are really changed when it comes to functionality in
this patch are:
1. When freeing the CSet we previously always cleared the hot card cache
for old regions. We now rely on this being done by free_region and this
will have the effect that for evacuation failures we won't clear the hot
card cache for those regions having failures. I've discussed this with a
couple of others and we can't see any problems with this.
2. When creating heap regions we previously used the default value false
for locked when initializing heap regions, but we know this code path
will never be called in parallel so we can safely remove this parameter
and always do rem_set()->clear_locked() in hr_clear().
Mach5 tier1-3 passed, currently running tier4-5 as well.
More information about the hotspot-gc-dev