RFR: 8368365: ASAN errors should produce hs-err files and core dumps [v2]
Thomas Stuefe
stuefe at openjdk.org
Tue Sep 23 10:43:11 UTC 2025
> When we run with ASAN enabled and ASAN catches an error, it reports, then stops the JVM. hs-err files and crash dumps at that point would be incredibly useful, though. The ASAN error report itself is seldom enlightening since it only contains native stacks.
>
> This patch makes it possible to get hs-err files and subsequent crash dumps by using the error callback functionality of ASAN. It registers a callback which gets called when ASAN catches an error. We then - carefully - print out the ASAN report to stderr (as ASAN itself would have done) and proceeed to end the JVM with a `fatal()`, which gives us an hs-err file, a callstack at that point including Java frames, and - if enabled - core dumps.
>
> Tested on Fedora 42 and Debian 12, both manually and by running the new companion jtreg test.
Thomas Stuefe has updated the pull request incrementally with one additional commit since the last revision:
Update address.cpp
-------------
Changes:
- all: https://git.openjdk.org/jdk/pull/27446/files
- new: https://git.openjdk.org/jdk/pull/27446/files/1b4476b3..69d5cf5d
Webrevs:
- full: https://webrevs.openjdk.org/?repo=jdk&pr=27446&range=01
- incr: https://webrevs.openjdk.org/?repo=jdk&pr=27446&range=00-01
Stats: 1 line in 1 file changed: 0 ins; 1 del; 0 mod
Patch: https://git.openjdk.org/jdk/pull/27446.diff
Fetch: git fetch https://git.openjdk.org/jdk.git pull/27446/head:pull/27446
PR: https://git.openjdk.org/jdk/pull/27446
More information about the hotspot-dev
mailing list