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

Rewire ShenandoahHeap::maybe_update_with_forwarded for contending fixups

    XMLWordPrintable

Details

    • Enhancement
    • Resolution: Fixed
    • P4
    • 13
    • 8-shenandoah, 11-shenandoah, 13
    • hotspot
    • gc
    • b25

    Backports

      Description

        Currently the method can return NULL on the path where something else is contending over the write. In most current cases, that path works correctly, but not when something else (for example, inline fixup in barrier taken by Java thread) updates the references on their own.

        Then, the CAS might fail (as it should), and the GC code would think that thread is responsible to show the object to the marking code. This is risky and would lead to bugs. Instead, we would want to reply with the most actual reference at all times.

        Attachments

          Issue Links

            Activity

              People

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

                Dates

                  Created:
                  Updated:
                  Resolved: