Skip to content

Commit

Permalink
Clear resolveFrameFlags after each frame walk
Browse files Browse the repository at this point in the history
Clear resolveFrameFlags in the interpreter stack walker after reporting
the frame. This is consistent with the JIT stack walker and avoids
leaving invalid flags set on entry to the JIT walker in very rare cases.

Also fix a small error in the resumeable stack walker, which has no
effect on the only current consumer of the feature.

Fixes: eclipse-openj9#2472

Signed-off-by: Graham Chapman <[email protected]>
  • Loading branch information
gacholio committed Aug 9, 2018
1 parent 2008d20 commit a78c587
Showing 1 changed file with 2 additions and 1 deletion.
3 changes: 2 additions & 1 deletion runtime/vm/swalk.c
Original file line number Diff line number Diff line change
Expand Up @@ -346,8 +346,9 @@ UDATA walkStackFrames(J9VMThread *currentThread, J9StackWalkState *walkState)
if (walkFrame(walkState) != J9_STACKWALK_KEEP_ITERATING) {
goto terminationPoint;
}
walkState->previousFrameFlags = walkState->frameFlags;
resumeInterpreterWalk:
walkState->previousFrameFlags = walkState->frameFlags;
walkState->resolveFrameFlags = 0;

/* Call the JIT walker if the current frame is a transition from the JIT to the interpreter */

Expand Down

0 comments on commit a78c587

Please sign in to comment.