RFR: 8301988: VerifyLiveClosure::verify_liveness asserts on bad pointers outside heap [v4]

Thomas Schatzl tschatzl at openjdk.org
Thu Feb 9 18:14:12 UTC 2023


> 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

Thomas Schatzl has updated the pull request incrementally with one additional commit since the last revision:

  removed never-read failed local variable. Formatting cleanup.

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

Changes:
  - all: https://git.openjdk.org/jdk/pull/12456/files
  - new: https://git.openjdk.org/jdk/pull/12456/files/b8182317..96523f99

Webrevs:
 - full: https://webrevs.openjdk.org/?repo=jdk&pr=12456&range=03
 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=12456&range=02-03

  Stats: 16 lines in 1 file changed: 6 ins; 10 del; 0 mod
  Patch: https://git.openjdk.org/jdk/pull/12456.diff
  Fetch: git fetch https://git.openjdk.org/jdk pull/12456/head:pull/12456

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


More information about the hotspot-gc-dev mailing list