RFR: 8235366: ZGC: Kitchensink.java fails in ZBarrier::should_mark_through
erik.osterlund at oracle.com
Mon Dec 9 11:12:19 UTC 2019
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"
> Bug: https://bugs.openjdk.java.net/browse/JDK-8235366
> Webrev: http://cr.openjdk.java.net/~pliden/8235366/webrev.1
> Testing: ZGC tier1-8
More information about the hotspot-gc-dev