RFR: 8314550: [macosx-aarch64] serviceability/sa/TestJmapCore.java fails with "sun.jvm.hotspot.debugger.UnmappedAddressException: 801000800"
Chris Plummer
cjplummer at openjdk.org
Thu Aug 24 23:39:36 UTC 2023
On some macosx-aarch64 systems, not all mapped pages are dumped to the core file. This first turned up with [JDK-8293563](https://bugs.openjdk.org/browse/JDK-8293563) where large parts of the ZGC heap would not be in the core file, leading to various SA address errors. For JDK-8293563 the issue was addressed by having the core file test always use `-XX:+AlwaysPreTouch` on macosx-aarch64. This seemed to force the ZGC pages to always end up in the core file.
A similar issue has been noticed with mapped in pages of the CDS archive. We are seeing cases where SA references to addresses that are clearly in the CDS archive (based on info in the hs_err file) are failing to be read from the core file by SA. This problem has turned up a number of times during CI testing, but I have yet to be able to reproduce it myself. This PR is an attempt to address this testing issue by having the CDS archive also pretouch all mapped in pages when `-XX:+AlwaysPreTouch` is used.
Tested with tier1 and tier3 and also ran the test about 5,000 times with and without the fix. It never reproduced for either. Hopefully the problem is gone with this fix, but it may take a few months of CI testing before we can be confident it is fixed.
-------------
Commit messages:
- Touch pages that are mapped in from CDS archive if AlwaysPreTouch is enabled.
Changes: https://git.openjdk.org/jdk/pull/15423/files
Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=15423&range=00
Issue: https://bugs.openjdk.org/browse/JDK-8314550
Stats: 24 lines in 1 file changed: 16 ins; 0 del; 8 mod
Patch: https://git.openjdk.org/jdk/pull/15423.diff
Fetch: git fetch https://git.openjdk.org/jdk.git pull/15423/head:pull/15423
PR: https://git.openjdk.org/jdk/pull/15423
More information about the serviceability-dev
mailing list