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

SPARC CodeBuffer overflow in generate_satb_log_enqueue

XMLWordPrintable

    • b01
    • sparc_64
    • solaris
    • Not verified

        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.

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

                Created:
                Updated:
                Resolved: