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

Remove CDS MiscCode region

XMLWordPrintable

    • b13

      The CDS MiscCode region is used for:
      (a) C++ vtables
      (b) Method trampolines

      (a) can be moved to the ReadWrite region
      (b) were introduced in JDK-8145221 so we can delay writing into Methods. This was intended to improve copy-on-write sharing to reduce memory footprint. However, this hasn't been shown to have any significant effect (footprint of metadata usually is much smaller than the Java heap), and introduces a lot of complexity in the HotSpot code.

      Removing (b) will make it easier to implement JDK-8026297 (Generating AdapterHandlerEntry during CDS dump), which will further improve start-up time.

      ============
      Other benefits of removing the MiscCode region:

      - We no longer have a read/write/executable region. This address the concern in JDK-8262922.
      - We can enable CDS on macOS/AArch64, which does not allow read/write/executable regions. (JDK-8253795)

            iklam Ioi Lam
            iklam Ioi Lam
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

              Created:
              Updated:
              Resolved: