8380011: Path-to-gcroots search should not trigger stack overflows#4306
8380011: Path-to-gcroots search should not trigger stack overflows#4306tstuefe wants to merge 1 commit intoopenjdk:masterfrom
Conversation
Reviewed-by: egahlin
|
👋 Welcome back stuefe! A progress list of the required criteria for merging this PR into |
|
❗ This change is not yet ready to be integrated. |
|
This backport pull request has now been updated with issue from the original commit. |
|
|
|
/approval request This fixes a crash in JFR when DFS object graph search gets too deep. Patch is small and low-risk. Tested: GHAs, and ran the contained regression test on Linux x64 manually. |
gnu-andrew
left a comment
There was a problem hiding this comment.
Patch is near-clean, just thrown off by the slightly different types in the DFSClosure constructor signature. Testing looks good and risk seems low, just adding a space check to avoid overflow.
|
I think the |
|
Thank you @gnu-andrew ! /integrate |
|
@tstuefe This pull request has not yet been marked as ready for integration. |
|
@GoeLin Would you mind approving this one? |
This backports a fix to JFR path-to-roots-heap-search using DFS that would lead to crashes if object graphs are too deep and we run out of stack. The fix is very simple and low-risk.
I had to manually resolve (even though Skara applied the clean label? What gives?) due to
https://bugs.openjdk.org/browse/JDK-8283710 (JVMTI: Use BitSet for object marking)
but the change was trivial, and my code not affected by missing 8283710.
Progress
Issue
Reviewers
Reviewing
Using
gitCheckout this PR locally:
$ git fetch https://git.openjdk.org/jdk17u-dev.git pull/4306/head:pull/4306$ git checkout pull/4306Update a local copy of the PR:
$ git checkout pull/4306$ git pull https://git.openjdk.org/jdk17u-dev.git pull/4306/headUsing Skara CLI tools
Checkout this PR locally:
$ git pr checkout 4306View PR using the GUI difftool:
$ git pr show -t 4306Using diff file
Download this PR as a diff file:
https://git.openjdk.org/jdk17u-dev/pull/4306.diff
Using Webrev
Link to Webrev Comment