Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8244180

Shenandoah: carry Phase to ShWorkerTimingsTracker explicitly

    XMLWordPrintable

    Details

    • Subcomponent:
      gc
    • Resolved In Build:
      b22

      Backports

        Description

        The code after JDK-8239786 carries the _current_phase in the ShenandoahPhaseTimings. This works for stop-the-world events.

        However, the testing of JDK-8243495 shows a peculiarity: heap iteration roots walk can happen in the middle of concurrent root walk, which poses the problem for this mechanism: it can acquire a wrong "phase", or add the counters twice to some phase. It is reliably caught by asserts after JDK-8243495 is applied.

        The way out is to pass Phase explicitly to every ShWorkerTimingsTracker, so we do not have this conflict at all.

          Attachments

            Issue Links

              Activity

                People

                Assignee:
                shade Aleksey Shipilev
                Reporter:
                shade Aleksey Shipilev
                Votes:
                0 Vote for this issue
                Watchers:
                1 Start watching this issue

                  Dates

                  Created:
                  Updated:
                  Resolved: