RFR: 8235366: ZGC: Kitchensink.java fails in ZBarrier::should_mark_through

Erik Österlund erik.osterlund at oracle.com
Mon Dec 9 11:12:19 UTC 2019

Hi Per,

Looks good.


On 2019-12-09 11:57, Per Liden wrote:
> JDK-8230661 introduced a bug where we can accidentally "downgrade" an 
> oop while healing it. More specifically, during the marking phase, an 
> AS_NO_KEELALIVE load racing with finalizable marking could leave the 
> oop in a remapped state (instead of finalizable marked state).
> The problem is the conditions for when to re-try a failing heal CAS. 
> Instead of using an is_good_or_null() check, this patch uses the 
> barrier fast_path() in the self_heal() function to avoid "downgrading" 
> oops.
> Bug: https://bugs.openjdk.java.net/browse/JDK-8235366
> Webrev: http://cr.openjdk.java.net/~pliden/8235366/webrev.1
> Testing: ZGC tier1-8
> /Per

More information about the hotspot-gc-dev mailing list