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

(ref) unnecessary process_soft_ref_reconsider

XMLWordPrintable

    • Icon: Enhancement Enhancement
    • Resolution: Fixed
    • Icon: P4 P4
    • 18
    • 9
    • hotspot
    • None
    • gc
    • b06
    • generic
    • generic

      I think ReferenceProcessor::process_soft_ref_reconsider (formerly known as process_phase1) is unnecessary. It seems like it shouldn't find anything, because of the similar policy-based test in ReferenceProcessor::discover_reference. And if it does find anything, the liveness analysis from the referent is executed with discovery disabled, which I think is wrong for what is being done by this phase. I think we do need to be performing discovery on references found by chasing through the referents of soft references that we choose by policy to keep alive.

      So I think this phase is presently an expensive nop, and should be deleted entirely, along with supporting infrastructure such as DiscoveredListIterator::make_active(), which I think is only used here.

            ayang Albert Yang
            kbarrett Kim Barrett
            Votes:
            0 Vote for this issue
            Watchers:
            7 Start watching this issue

              Created:
              Updated:
              Resolved: