Integrated: 8308500: ZStatSubPhase::register_start should not call register_gc_phase_start if ZAbort::should_abort()

Axel Boldt-Christmas aboldtch at openjdk.org
Mon Jan 5 06:20:42 UTC 2026


On Mon, 22 May 2023 07:37:19 GMT, Axel Boldt-Christmas <aboldtch at openjdk.org> wrote:

> `ZStatSubPhase::register_start` should not call `register_gc_phase_start` if `ZAbort::should_abort()` is true. This will cause an unbalanced push and pop behaviour of the phase stack as `ZStatSubPhase::register_end` stops popping (and sending events) after the aborting has started. This will create an issue if more subsequent sub-phases are added in-between two abort points as the phase stack may overflow. 
> 
> Simply avoid pushing new phases when aborting has started solves this issue.

This pull request has now been integrated.

Changeset: e5596133
Author:    Axel Boldt-Christmas <aboldtch at openjdk.org>
URL:       https://git.openjdk.org/jdk/commit/e55961331e10884e4255ab152d430ceb3f02748c
Stats:     1 line in 1 file changed: 0 ins; 0 del; 1 mod

8308500: ZStatSubPhase::register_start should not call register_gc_phase_start if ZAbort::should_abort()

Reviewed-by: stefank, eosterlund

-------------

PR: https://git.openjdk.org/jdk/pull/14075


More information about the hotspot-gc-dev mailing list