Integrated: 8273614: Shenandoah: intermittent timeout with ConcurrentGCBreakpoint tests
Zhengyu Gu
zgu at openjdk.java.net
Mon Oct 11 15:14:17 UTC 2021
On Fri, 8 Oct 2021 16:47:07 GMT, Zhengyu Gu <zgu at openjdk.org> wrote:
> I were able to reproduce with aggressive heuristics.
>
> A _wb_breakpoint GC request , while a concurrent GC is started. ShenandoahBreakpoint::_start_gc may not get set, as we bypass it if it is not a _wb_breakpoint GC, then we are forever blocked in ShenandoahBreakpoint::at_before_gc(), waiting for the flag to be set.
>
> The solution is only run breakpoints during _wb_breakpoint GC.
>
> Also, enforced _requested_gc_cause and _gc_requested order, ensure that read side sees latest _requested_gc_cause.
>
> Test:
>
> - [x] tier1 with Shenandoah
This pull request has now been integrated.
Changeset: 3f073377
Author: Zhengyu Gu <zgu at openjdk.org>
URL: https://git.openjdk.java.net/jdk/commit/3f07337722a0c8c6b452a44745598268d67c0864
Stats: 27 lines in 1 file changed: 15 ins; 3 del; 9 mod
8273614: Shenandoah: intermittent timeout with ConcurrentGCBreakpoint tests
Reviewed-by: shade
-------------
PR: https://git.openjdk.java.net/jdk/pull/5868
More information about the shenandoah-dev
mailing list