RFR: 8229012: When single stepping, the debug agent can cause the thread to remain in interpreter mode after single stepping completes

Chris Plummer cjplummer at openjdk.org
Fri Jan 17 21:18:12 UTC 2025


When doing a  STEP_OVER, the debug agent does a NotifyFramePop() on the current frame as a safety net. After the STEP_OVER completes, the NotifyFramePop() is usually still in place. This keeps the thread in interp_only mode, which hurts performance. JVMTI has added a new ClearAllFramePops() API to allow clearing of the NotifyFramePop() and normal performance to resume.

Testing:

- [x] Tier1 CI
- [x] Tier2 CI svc testing
- [x] Tier3 CI svc testing
- [x] Tier5 CI svc testing
- [x] ran all svc test 10 times each on all supported platforms

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

Commit messages:
 - fix jcheck error
 - Use new ClearAllFramePops API to allow compilation after single stepping completes.

Changes: https://git.openjdk.org/jdk/pull/23182/files
  Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=23182&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8229012
  Stats: 300 lines in 2 files changed: 298 ins; 1 del; 1 mod
  Patch: https://git.openjdk.org/jdk/pull/23182.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/23182/head:pull/23182

PR: https://git.openjdk.org/jdk/pull/23182


More information about the serviceability-dev mailing list