Uploaded image for project: 'Harmony'
  1. Harmony
  2. HARMONY-1942

[drlvm] Back-branch polling TLS offset is incorrect. Stability and performance fix

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Critical
    • Resolution: Fixed
    • None
    • None
    • DRLVM
    • None

    Description

      The suspend flag's TLS offset used by JIT agorithms was incorrect after the latest merge of TM.
      As the result every loop iteration BBP algorithm uses slow path.

      This patch
      1) Fixes the problem
      2) Adds new functionality to TM: the UDATA VMCALL hythread_tls_get_offset(hythread_tls_key_t key) method.
      3) Removes jit_private data field from HyThread
      3) Fix JIT to always use allocation algorithm for TLS keys, not hardcoded values.

      Attachments

        1. hy_2.diff
          18 kB
          Mikhail Fursov
        2. hy.diff
          8 kB
          Mikhail Fursov

        Issue Links

          Activity

            People

              wjwashburn Weldon Washburn
              mfursov Mikhail Fursov
              Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: