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

Fix for 6929067 introduces additional overhead in thread creation/termination paths

    XMLWordPrintable

    Details

    • Type: Enhancement
    • Status: Closed
    • Priority: P3
    • Resolution: Fixed
    • Affects Version/s: 7
    • Fix Version/s: hs19
    • Component/s: hotspot
    • Labels:
    • Subcomponent:
    • Introduced In Build:
      b02
    • Introduced In Version:
    • Resolved In Build:
      b07
    • CPU:
      generic
    • OS:
      linux
    • Verification:
      Not verified

      Backports

        Description

        The fix for 6929067 introduced a check for growable stacks by parsing /proc/self/maps when setting up and tearing down the stack guard pages. This can become a bottleneck when large numbers of threads start or terminate around the same time. Growable stacks are only expected in the main/initial thread as they are not used by the current day threads libraries. We can remove the bottleneck by only checking the stack bounds for the initial thread. But in case of future changes we maintain the existing behaviour in debug mode and add a check that if we find a growable stack that it does indeed belong to the initial thread.

          Attachments

            Issue Links

              Activity

                People

                Assignee:
                dholmes David Holmes
                Reporter:
                dholmes David Holmes
                Votes:
                0 Vote for this issue
                Watchers:
                0 Start watching this issue

                  Dates

                  Created:
                  Updated:
                  Resolved:
                  Imported:
                  Indexed: