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

Shenandoah: Used wrong closure to mark concurrent roots

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Resolved
    • Priority: P3
    • Resolution: Fixed
    • Affects Version/s: 15, 16, 17
    • Fix Version/s: 17
    • Component/s: hotspot
    • Labels:
    • Subcomponent:
      gc
    • Resolved In Build:
      b02

      Description

      During concurrent mark phase, there should not have forwarded objects in roots. Therefore, it should use ShenandoahMarkRefsClosure to mark concurrent roots, instead of ShenandoahMarkResolveRefsClosure.

      Note: this is *not* a correctness bug, but performance one, as ShenandoahMarkResolveRefsClosure closure unnecessarily resolves forwarding pointers, where always resolved to themselves.

        Attachments

          Issue Links

            Activity

              People

              Assignee:
              zgu Zhengyu Gu
              Reporter:
              zgu Zhengyu Gu
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved: