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

Shenandoah: Bugs in ShenandoahEvacOOMHandler related code

    XMLWordPrintable

Details

    • b20

    Description

      There are a couple of bugs in ShenandoahEvacOOMHandler related code.

      1) ShenandoahEvacOOMHandler::register_thread()
      It does not do OOM check before blindly cmpxchg in threads_in_evac. The cmpxchg can success even OOM is in progress, that results the thread can continue evacuate objects.

      2) When a nested OOM scope encounters OOM, it does not decrease threads_in_evac count before entering wait_for_no_evac_threads() loop, it deadlocks itself.

      Attachments

        Issue Links

          Activity

            People

              zgu Zhengyu Gu
              zgu Zhengyu Gu
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: