JDK-8288105 : [PPC64] Problems with -XX:+VerifyStack
  • Type: Bug
  • Component: hotspot
  • Sub-Component: runtime
  • Affected Version: 19
  • Priority: P3
  • Status: Resolved
  • Resolution: Fixed
  • CPU: ppc
  • Submitted: 2022-06-09
  • Updated: 2023-01-05
  • Resolved: 2022-06-13
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
JDK 19 JDK 20
19 b27Fixed 20Fixed
Related Reports
Relates :  
Relates :  
Description
VM crashes with "guarantee(last != NULL) failed: last may not be null" when running with -XX:+VerifyStack after JDK-8284161 (debug build only).

Can be reproduced in tests like:
compiler/c2/cr6589834/Test_ia32.java
testlibrary_tests/ir_framework/tests/TestDFlags.java
compiler/uncommontrap/TestDeoptOOM.java
compiler/interpreter/TestVerifyStackAfterDeopt.java
compiler/interpreter/VerifyStackWithUnreachableBlock.java

Stack frames get analyzed in Deoptimization::unpack_frames which is a JRT_LEAF function. That doesn't work reliably in general and currently doesn't work on PPC64 because the deoptimization and uncommon trap stubs don't set the last Java PC to where the OopMaps are.

Comments
Changeset: 7aafc69a Author: Martin Doerr <mdoerr@openjdk.org> Date: 2022-06-13 14:42:49 +0000 URL: https://git.openjdk.org/jdk19/commit/7aafc69a96cc5c2899d9930bcb81ae4cd0319d5c
13-06-2022

A pull request was submitted for review. URL: https://git.openjdk.org/jdk19/pull/3 Date: 2022-06-10 10:29:52 +0000
10-06-2022