RFR(S): 8207342: error occurred during error reporting (printing register info)
martin.doerr at sap.com
Tue Jul 17 09:57:40 UTC 2018
thanks for the review!
I have tested it on the command line on x86, PPC64 (linux+AIX) and s390:
jdk/bin/java -XX:+CrashGCForDumpingJavaThread -version
I can see all registers in the hs_err file which is not the case without the fix.
I'd like to contribute more improvements for hs_err files for jdk12 at a later point of time.
I think we should add jtreg tests when doing that.
From: Lindenmaier, Goetz
Sent: Dienstag, 17. Juli 2018 11:41
To: Doerr, Martin <martin.doerr at sap.com>; hotspot-runtime-dev at openjdk.java.net
Subject: RE: RFR(S): 8207342: error occurred during error reporting (printing register info)
thanks for making this fix. It's good to have this fix
in 11, even if making is_readable_pointer available is
a sensible, but untypical refactoring for RDP.
How did you test this change?
From: Doerr, Martin
Sent: Montag, 16. Juli 2018 16:07
To: hotspot-runtime-dev at openjdk.java.net<mailto:hotspot-runtime-dev at openjdk.java.net>; Lindenmaier, Goetz <goetz.lindenmaier at sap.com<mailto:goetz.lindenmaier at sap.com>>
Subject: RFR(S): 8207342: error occurred during error reporting (printing register info)
I'd like to fix the "printing register info" step in hs_err files for jdk11 if possible.
The function os::print_location misses a check if the pointer is readable.
For example "jdk/bin/java -XX:+CrashGCForDumpingJavaThread -version" generates a hs_err file which doesn't analyze the registers correctly because of "error occurred during error reporting (printing register info)" in section "Register to memory mapping".
In addition, registers are missing on PPC64 and s390.
My proposal looks a little larger than S, but it's small besides moving the duplicated "is_readable_pointer" from codeHeapState and misc_aix to os:
More information about the hotspot-runtime-dev