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

SPARC CodeBuffer overflow in generate_satb_log_enqueue

    XMLWordPrintable

    Details

    • Subcomponent:
    • Resolved In Build:
      b01
    • CPU:
      sparc_64
    • OS:
      solaris
    • Verification:
      Not verified

      Backports

        Description

        The hard-coded size for the CodeBuffer used in generate_satb_log_enqueue is too small; we can overrun the buffer under certain rare conditions. Specifically, we have seen a case where CBCond was not supported (older Fujitsu hardware) and libjvm.so was loaded far enough away from the code cache that PC-relative addressing could not be used. This case resulted in an overrun of 8 bytes (2 instructions).

        The fix for JDK-8166317 appears to have been the "straw that broke the camel's back". The with_frame version of satb_log_enqueue is a few instructions longer than the frameless version, making this issue a regression in practice.

          Attachments

            Issue Links

              Activity

                People

                Assignee:
                dbuck David Buck
                Reporter:
                shadowbug Shadow Bug
                Votes:
                0 Vote for this issue
                Watchers:
                4 Start watching this issue

                  Dates

                  Created:
                  Updated:
                  Resolved: