Integrated: 8310194: Generational ZGC: Lock-order asserts in JVMTI IterateThroughHeap
Stefan Karlsson
stefank at openjdk.org
Tue Jun 20 13:50:12 UTC 2023
On Fri, 16 Jun 2023 11:52:51 GMT, Stefan Karlsson <stefank at openjdk.org> wrote:
> Generational ZGC changed the location where the heap object iterator called the visit function. It used to be called when the objects were popped and then followed, but it was changed so that the function where called immediately when the objects are marked. This gave the benefit that the verification code code show exactly what root had a broken object. Unfortunately, this change started to apply non-GC closure during the root iteration. This could lead to lock order issues, just like the one described in the JBS entry.
>
> This fix moves the visit calls for non-GC closures back to the follow calls.
This pull request has now been integrated.
Changeset: 4e4e586d
Author: Stefan Karlsson <stefank at openjdk.org>
URL: https://git.openjdk.org/jdk/commit/4e4e586dac3f4be15a6488a6b72aa9e2cd5d43db
Stats: 203 lines in 5 files changed: 103 ins; 37 del; 63 mod
8310194: Generational ZGC: Lock-order asserts in JVMTI IterateThroughHeap
Reviewed-by: eosterlund, aboldtch
-------------
PR: https://git.openjdk.org/jdk/pull/14518
More information about the hotspot-gc-dev
mailing list