Integrated: 8301988: VerifyLiveClosure::verify_liveness asserts on bad pointers outside heap

Thomas Schatzl tschatzl at openjdk.org
Thu Feb 9 20:12:53 UTC 2023


On Tue, 7 Feb 2023 15:03:36 GMT, Thomas Schatzl <tschatzl at openjdk.org> wrote:

> Hi all,
> 
>   can I have reviews for this change to liveness verification that fixes some unwanted asserts because
> 
>  - it uses decode_not_null which will assert if the given oop address is not in the heap, making the remainder of the verification useless in that case
> - if the referenced object is not in the heap, we try to get its heap region too when printing, which also fails some assertions
> - in the innermost if lots of code is duplicated in both cases 
> 
> The first two issues are really annoying (there is another one when the `Klass` is garbage when calling `is_obj_dead_cond`, but I'll try to improve that separately).
> 
> Testing: local compilation/testing, gha
> 
> Thanks,
>   Thomas

This pull request has now been integrated.

Changeset: 0aeebee2
Author:    Thomas Schatzl <tschatzl at openjdk.org>
URL:       https://git.openjdk.org/jdk/commit/0aeebee284effe9abd0ed3cf2845430b40bb53bd
Stats:     84 lines in 6 files changed: 41 ins; 32 del; 11 mod

8301988: VerifyLiveClosure::verify_liveness asserts on bad pointers outside heap

Reviewed-by: dholmes, ayang

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

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


More information about the hotspot-gc-dev mailing list