RFR(S): 8247762: [aarch64] Timeout in .../HeapDumpTestWithActiveProcess.java due to inf. loop in AARCH64CurrentFrameGuess.run()

Andrew Haley aph at redhat.com
Mon Jul 6 08:37:35 UTC 2020


On 05/07/2020 16:26, Patric Hedlin wrote:
> Issue:  https://bugs.openjdk.java.net/browse/JDK-8247762
> Webrev: http://cr.openjdk.java.net/~phedlin/tr8247762/
> 
> 
> AARCH64CurrentFrameGuess.run() may loop indefinitely in a bad 
> stack-walk. This is JDK-8231635 applied to AArch64.

 141               Frame oldFrame = frame;
 142               frame = frame.sender(map);
 143               if (frame.getSP().lessThanOrEqual(oldFrame.getSP())) {
 144                 // Frame points to itself or to a location in the wrong direction.
 145                 // Break the loop and move on to next offset.
 146                 if (DEBUG) {
 147                   System.out.println("CurrentFrameGuess: frame <= oldFrame: " + frame);
 148                 }
 149                 break;
 150               }
 151             }

OK, that looks like a reasonable thing to do, but I would wonder how the stack got
into that mess.

-- 
Andrew Haley  (he/him)
Java Platform Lead Engineer
Red Hat UK Ltd. <https://www.redhat.com>
https://keybase.io/andrewhaley
EAC8 43EB D3EF DB98 CC77 2FAD A5CD 6035 332F A671



More information about the serviceability-dev mailing list