RFR: 8278627: Shenandoah: TestHeapDump test failed on ppc64le

Zhengyu Gu zgu at openjdk.java.net
Thu Dec 16 17:35:23 UTC 2021


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 with `nmethod::oops_do_try_claim()` and closures that use the nmethod, e.g. `MarkingCodeBlobClosure`. Since `Shenandoah` 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.

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

Commit messages:
 - Merge branch 'master' into JDK-8278627-codecache-ppc
 - Fix passive mode
 - Fixed using wrong API
 - fix
 - v3
 - Merge branch 'master' into JDK-8278627-codecache-ppc
 - v2
 - v1
 - 8278627: Shenandoah: TestHeapDump test failed on ppc64le

Changes: https://git.openjdk.java.net/jdk/pull/6864/files
 Webrev: https://webrevs.openjdk.java.net/?repo=jdk&pr=6864&range=00
  Issue: https://bugs.openjdk.java.net/browse/JDK-8278627
  Stats: 56 lines in 3 files changed: 23 ins; 6 del; 27 mod
  Patch: https://git.openjdk.java.net/jdk/pull/6864.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk pull/6864/head:pull/6864

PR: https://git.openjdk.java.net/jdk/pull/6864



More information about the hotspot-gc-dev mailing list