RFR: 8270155: ARM32: Improve register dump in hs_err

Aleksey Shipilev shade at openjdk.java.net
Fri Jul 9 12:20:32 UTC 2021


Noticed that ARM32 hs_errs are formatted weirdly, there is a newline after register value, and it prints the register value twice. `print_location` already prints the value and does the CR for us, so we should just delegate there.

Excerpt tefore:


Register to memory mapping:

  r0 = 0xb6b54430
0xb6b54430: <offset 0x00e69430> in /jdk/lib/server/libjvm.so at 0xb5ceb000

  r1 = 0x00000501
0x00000501 is an unknown value

  r2 = 0xb6b54ef8
0xb6b54ef8: <offset 0x00e69ef8> in /jdk/lib/server/libjvm.so at 0xb5ceb000

  r3 = 0xb6b54eb4
0xb6b54eb4: <offset 0x00e69eb4> in /jdk/lib/server/libjvm.so at 0xb5ceb000

  r4 = 0xb6f54000
0xb6f54000 points into unknown readable memory: 0x00000058 | 58 00 00 00


Excerpt after:


Register to memory mapping:

  r0  = 0xb6b3fa70: <offset 0x013f5a70> in /home/pi/shipilev-jdk/build/linux-arm-server-fastdebug/images/jdk/lib/server/libjvm.so at 0xb574a000
  r1  = 0x00000501 is an unknown value
  r2  = 0xb6b40544: <offset 0x013f6544> in /home/pi/shipilev-jdk/build/linux-arm-server-fastdebug/images/jdk/lib/server/libjvm.so at 0xb574a000
  r3  = 0xb6b40500: <offset 0x013f6500> in /home/pi/shipilev-jdk/build/linux-arm-server-fastdebug/images/jdk/lib/server/libjvm.so at 0xb574a000
  r4  = 0x70d6a83c points into unknown readable memory: 0xb6ce8b64 | 64 8b ce b6


Additional testing:
 - [x] Eyeballing ARM32 crash logs

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

Commit messages:
 - 8270155: ARM32: Improve register dump in hs_err

Changes: https://git.openjdk.java.net/jdk/pull/4739/files
 Webrev: https://webrevs.openjdk.java.net/?repo=jdk&pr=4739&range=00
  Issue: https://bugs.openjdk.java.net/browse/JDK-8270155
  Stats: 2 lines in 1 file changed: 0 ins; 1 del; 1 mod
  Patch: https://git.openjdk.java.net/jdk/pull/4739.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk pull/4739/head:pull/4739

PR: https://git.openjdk.java.net/jdk/pull/4739


More information about the hotspot-runtime-dev mailing list