[jdk25] RFR: 8358183: [JVMCI] crash accessing nmethod::jvmci_name in CodeCache::aggregate
Boris Ulasevich
bulasevich at openjdk.org
Thu Jul 10 17:46:20 UTC 2025
This is the backport of the JVMCI metadata crash fix.
Issue:
When flushing nmethods via CodeBlob::purge(), the JVMCI metadata was freed (mutable_data) but its size fields remained non-zero. As a result, invoking heap analytics via jcmd Compiler.CodeHeap_Analytics still walks the purged metadata and calls jvmci_name() on arbitrary memory, leading to intermittent crashes
Fix:
Extend CodeBlob::purge() to zero out the _mutable_data_size, _relocation_size, and _metadata_size fields so that after a purge jvmci_data_size() returns 0 and CompileBroker::print_heapinfo() skips any JVMCI metadata
-------------
Commit messages:
- Backport 74822ce12acaf9816aa49b75ab5817ced3710776
Changes: https://git.openjdk.org/jdk/pull/26248/files
Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=26248&range=00
Issue: https://bugs.openjdk.org/browse/JDK-8358183
Stats: 3 lines in 2 files changed: 3 ins; 0 del; 0 mod
Patch: https://git.openjdk.org/jdk/pull/26248.diff
Fetch: git fetch https://git.openjdk.org/jdk.git pull/26248/head:pull/26248
PR: https://git.openjdk.org/jdk/pull/26248
More information about the hotspot-compiler-dev
mailing list