RFR: 8340392: Handle OopStorage in location decoder [v5]

Aleksey Shipilev shade at openjdk.org
Thu Sep 19 08:25:19 UTC 2024


> Another debugging QoL improvement.  Currently, when there is a pointer into `OopStorage` that we need to decode for the error log, we just print:
> 
>   0x00007ad45c169e10 into live malloced block starting at 0x00007ad45c169dd0, size 632, tag mtInternal
> 
> 
> This is reported by NMT after [JDK-8304815](https://bugs.openjdk.org/browse/JDK-8304815). It is likely worse without NMT. We can actually decode which block in which `OopStorage` the address likely belongs to. This becomes handy when debugging GC crashes that involve `OopStorage`-handled roots.
> 
> This patch is able to print the following instead:
> 
> 
>   0x0000000102c05bd0 is a pointer 2/64 into block 0 in oop storage "VM Global"

Aleksey Shipilev has updated the pull request incrementally with one additional commit since the last revision:

  More review comments

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

Changes:
  - all: https://git.openjdk.org/jdk/pull/21072/files
  - new: https://git.openjdk.org/jdk/pull/21072/files/17622ba9..eee8a738

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

  Stats: 9 lines in 3 files changed: 0 ins; 1 del; 8 mod
  Patch: https://git.openjdk.org/jdk/pull/21072.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/21072/head:pull/21072

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


More information about the hotspot-dev mailing list