Integrated: 8276201: Shenandoah: Race results degenerated GC to enter wrong entry point
Zhengyu Gu
zgu at openjdk.java.net
Mon Nov 1 12:21:19 UTC 2021
On Sat, 30 Oct 2021 12:56:38 GMT, Zhengyu Gu <zgu at openjdk.org> wrote:
> There is subtle race when concurrent GC comes out of final mark safepoint: an allocation failure occurred before control thread checks OOM conditional, that triggers degenerated GC enters "mark" degenerated point.
>
> Degenerated GC re-executes final mark, then switching off SATB, but it is already off, because concurrent GC already completed final mark, that triggers the assertion.
>
> The solution is to consult concurrent_mark_in_progress flag when selects degen-point.
>
> Test:
> - [x] hotspot_gc_shenandoah
This pull request has now been integrated.
Changeset: dbf5100d
Author: Zhengyu Gu <zgu at openjdk.org>
URL: https://git.openjdk.java.net/jdk/commit/dbf5100dd705fbe4a3aeae49405ca541d581f106
Stats: 4 lines in 1 file changed: 2 ins; 0 del; 2 mod
8276201: Shenandoah: Race results degenerated GC to enter wrong entry point
Reviewed-by: shade
-------------
PR: https://git.openjdk.java.net/jdk/pull/6179
More information about the hotspot-gc-dev
mailing list