Integrated: 8340392: Handle OopStorage in location decoder

Aleksey Shipilev shade at openjdk.org
Mon Sep 23 07:05:41 UTC 2024


On Wed, 18 Sep 2024 17:47:21 GMT, Aleksey Shipilev <shade at openjdk.org> wrote:

> 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"

This pull request has now been integrated.

Changeset: 0f253d11
Author:    Aleksey Shipilev <shade at openjdk.org>
URL:       https://git.openjdk.org/jdk/commit/0f253d11033a26d15ea20df19db6765bb274a848
Stats:     132 lines in 7 files changed: 131 ins; 0 del; 1 mod

8340392: Handle OopStorage in location decoder

Reviewed-by: kbarrett, dholmes

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

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


More information about the hotspot-dev mailing list