-
Notifications
You must be signed in to change notification settings - Fork 116
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
8350412: [21u] AArch64: Ambiguous frame layout leads to incorrect traces in JFR #1418
Conversation
👋 Welcome back dchuyko! A progress list of the required criteria for merging this PR into |
@dchuyko This change now passes all automated pre-integration checks. ℹ️ This project also has non-automated pre-integration requirements. Please see the file CONTRIBUTING.md for details. After integration, the commit message for the final commit will be:
You can use pull request commands such as /summary, /contributor and /issue to adjust it as needed. At the time when this comment was updated there had been 84 new commits pushed to the
As there are no conflicts, your changes will automatically be rebased on top of these commits when integrating. If you prefer to avoid this automatic rebasing, please check the documentation for the /integrate command for further details. As you do not have Committer status in this project an existing Committer must agree to sponsor your change. Possible candidates are the reviewers of this PR (@phohensee) but any other Committer may sponsor as well. ➡️ To flag this PR as ready for integration with the above commit message, type |
|
@dchuyko usage: |
/approval request This change fixes the stack layout that leads to non-deterministic stack walking, which at least turns into incorrect traces reported by JFR, other profiling tools also loose samples or require special workarounds. It is technically a clean backport of a tiny aarch64.ad change cherry picked from JEP 491. With a constant frame size JFR stops reporting incorrect traces on aarch64. In a case of approval I'll defer the integration to 21u till JDK 24 is out (or a defer label can be used). |
/integrate |
/sponsor |
Going to push as commit 47aafc2.
Your commit was automatically rebased without conflicts. |
@phohensee @dchuyko Pushed as commit 47aafc2. 💡 You may see a message that your pull request was closed with unmerged commits. This can be safely ignored. |
This change fixes incorrect stack traces sometimes reported by JFR (non-deterministic stack walking). It is technically a clean backport of 'Make the anchor frame walkable' changes of aarch64_enc_java_to_runtime() from https://github.com/openjdk/jdk/pull/21565/files#diff-018aa61d1a7aafcf70a535fcd40a318a4bd6511fd40ac39ce4be90cc52216749
I propose to cherry pick those into older releases after JDK 24 is out, starting from 21u.
Testing: tier1,2 on linux-aarch64.
Progress
Issue
Reviewers
Reviewing
Using
git
Checkout this PR locally:
$ git fetch https://git.openjdk.org/jdk21u-dev.git pull/1418/head:pull/1418
$ git checkout pull/1418
Update a local copy of the PR:
$ git checkout pull/1418
$ git pull https://git.openjdk.org/jdk21u-dev.git pull/1418/head
Using Skara CLI tools
Checkout this PR locally:
$ git pr checkout 1418
View PR using the GUI difftool:
$ git pr show -t 1418
Using diff file
Download this PR as a diff file:
https://git.openjdk.org/jdk21u-dev/pull/1418.diff
Using Webrev
Link to Webrev Comment