8278627: Shenandoah: TestHeapDump test failed #56
Conversation
|
@zhengyu123 The following labels will be automatically applied to this pull request:
When this pull request is ready to be reviewed, an "RFR" email will be sent to the corresponding mailing lists. If you would like to change these labels, use the /label pull request command. |
@zhengyu123 This change now passes all automated pre-integration checks. 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 3 new commits pushed to the
Please see this link for an up-to-date comparison between the source branch of this pull request and the
|
/integrate |
Going to push as commit 1128674.
Your commit was automatically rebased without conflicts. |
@zhengyu123 Pushed as commit 1128674. |
This intermittent failure seems to be observed only on Linux ppc64le, but it is not ppc specific problem.
With concurrent thread stack scanning/updating, nmtehod entry barrier has to be applied prior to thread stack/code roots scanning during heap iteration, to ensure scanner only sees to-space objects.
The patch also cleanup the use of
nmethod::oops_do_marking_prologue/epilogue()
, which should be used withnmethod::oops_do_try_claim()
and closures that use the nmethod, e.g.MarkingCodeBlobClosure
. SinceShenandoah
switched to concurrent code root iteration, they are no longer applied.Test:
The failure on Linux ppc64le is intermittent, usually sees a failure about 3
hotspot_gc_shenandoah
runs. I have yet seen any failures after 10 runs with the patch.SAP tested this patch in jdk/jdk repo in nightly tests, did not see failure so far.
Progress
Issue
Reviewers
Reviewing
Using
git
Checkout this PR locally:
$ git fetch https://git.openjdk.java.net/jdk18 pull/56/head:pull/56
$ git checkout pull/56
Update a local copy of the PR:
$ git checkout pull/56
$ git pull https://git.openjdk.java.net/jdk18 pull/56/head
Using Skara CLI tools
Checkout this PR locally:
$ git pr checkout 56
View PR using the GUI difftool:
$ git pr show -t 56
Using diff file
Download this PR as a diff file:
https://git.openjdk.java.net/jdk18/pull/56.diff