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

Shenandoah: support nesting evacuation OOM scope

    Details

    • Type: Enhancement
    • Status: Resolved
    • Priority: P3
    • Resolution: Fixed
    • Affects Version/s: 8-shenandoah, 11.0.9, 14, 15
    • Fix Version/s: 15
    • Component/s: hotspot
    • Subcomponent:
      gc
    • Resolved In Build:
      b25

      Description

      Evacuation OOM scope is used to handle OOM during oop evacuation, currently, it does not support nesting.

      That presents several drawbacks:
      1) Can not allow barriers on some/many GC paths, manifested by JDK-8237396 and JDK-8242216. Although, we fixed them in shared code, but sooner or later, the problem will likely pop up again.

      2) We have to fine grain the code for setting up Evac OOM scope, which can be expensive, while setting up per-thread nesting scope is much cheaper.

      3) Complicates code, have to deal with if the call comes from GC or barrier.

      Supporting per-thread nesting scope, should eliminate above shortcomings.

        Attachments

          Issue Links

            Activity

              People

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

                Dates

                • Created:
                  Updated:
                  Resolved: