On Fri, 16 Jun 2023 11:52:51 GMT, Stefan Karlsson <stef...@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 <stef...@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

Reply via email to