Deadlocks in TraceExceptions

XMLWordPrintable

    • b42
    • generic
    • generic

      The TraceExceptions code in the VM uses the ThreadCritical lock to serialize its
      output (presumably for historical reasons). Now that there exists a mechanism
      for locking the tty (ttyLocker), there is a potential deadlock that happens
      fairly quickly when TraceExceptions, TraceDeoptimization and DeoptimizeALot /
      DeoptimizeRandom are all specified. The deadlock is between the various
      TraceExceptions code that uses ThreadCritical and the TraceDeoptimization code
      in Deoptimization::create_vframeArray which seizes the ttyLocker very high up
      and performs allocation internally. The solution is to use ttyLocker in place
      of ThreadCritical in the TraceExceptions code.

            Assignee:
            Kenneth Russell (Inactive)
            Reporter:
            Kenneth Russell (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

              Created:
              Updated:
              Resolved:
              Imported:
              Indexed: