g1ConcurrentMark is missing volatile specifiers for _finger

XMLWordPrintable

    • Type: Bug
    • Resolution: Fixed
    • Priority: P3
    • 9
    • Affects Version/s: 9
    • Component/s: hotspot
    • None
    • gc
    • inapplicable
    • generic
    • generic

      The _finger field of G1ConcurrentMark is part of a lock-free protocol, yet is missing a volatile specifier, which leads to less robust behavior.

      The behavior is more robust with volatiles turned on, and our helmets should always be on.

      This is related to JDK-8033552, but was split out due to the large size of the work being done there.

            Assignee:
            Erik Ă–sterlund
            Reporter:
            Erik Ă–sterlund
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:
              Resolved: