Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8153224 Monitor deflation prolong safepoints
  3. JDK-8222295

more baseline cleanups from Async Monitor Deflation project

    XMLWordPrintable

Details

    • Sub-task
    • Resolution: Fixed
    • P4
    • 13
    • 13
    • hotspot
    • b18
    • generic
    • generic

    Description

      This sub-task captures updates to the baseline code that came up
      during the Async Monitor Deflation project design review and code
      review email threads.
       
      The cleanups include:

      - rename ObjectMonitor::_count -> ObjectMonitor::_contentions
      - update comment in objectMonitor.hpp for _contentions field declaration
      - delete unused count_offset_in_bytes()
      - delete count() getter
      - replace uses of 'count()' with 'contentions()'
      - deleted declared but undefined set_count()
      - delete some stale TODO-FIXME comments
      - update comments in ObjectSynchronizer::FastHashCode()
      - change 'hashcode' -> 'hash code' for consistency; the consistent
        forms are: 'hash code', 'Hash Code', 'hashCode' and 'HashCode'
      - add more assert() diagnostics for incoming object header in inflate()
      - add more assert() diagnostics for enter()'s TrySpin() branch
      - add more assert() diagnostics in ObjectMonitor::clear()
      - add more assert() and guarantee() diagnostics in
        ObjectSynchronizer::deflate_monitor()
      - get rid of unnecessary '(address)' casts

      One of the changes is in print output:

      - st->print("{count=0x%08x,waiters=0x%08x"
      + st->print("{contentions=0x%08x,waiters=0x%08x"

      I searched for tests that depended on '{count=.*,waiters=' and did not find any.

      Attachments

        Activity

          People

            dcubed Daniel Daugherty
            dcubed Daniel Daugherty
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: