Refactor ClassLoaderData::remove_handle to use the Access API

XMLWordPrintable

    • Type: Enhancement
    • Resolution: Fixed
    • Priority: P4
    • 11
    • Affects Version/s: None
    • Component/s: hotspot
    • None
    • gc
    • b01

      The ClassLoaderData::remove_handle() member function currently uses explicit G1 SATB barriers to remove an oop from the root set, as these handles are not necessarily walked by the GC in a safepoint. Therefore G1 needs pre-write barriers.

      This should now be modelled as a RootAccess<IN_CONCURRENT_ROOT>::oop_store instead. This maps to performing a pre-write SATB barrier with G1, but other GCs are free to do other things as necessary.

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

              Created:
              Updated:
              Resolved: