JDK-8224169 : Cleanup G1DirtyCardQueueSet::num_processed_xxx
  • Type: Enhancement
  • Component: hotspot
  • Sub-Component: gc
  • Affected Version: 13
  • Priority: P4
  • Status: Resolved
  • Resolution: Not an Issue
  • Submitted: 2019-05-18
  • Updated: 2020-02-14
  • Resolved: 2020-02-14
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
Other
tbdResolved
Related Reports
Relates :  
Description
G1DirtyCardQueueSet has a pair of members, _num_processed_mut and _num_processed_rs_thread, with associated accessor functions.  There are several problems with these.

The members and the accessors are declared jint, but their only use is by G1RemSetSummary, where they are used as effectively size_t values.

The members may be incremented by multiple threads concurrently.  That's done using Atomic::inc, which is fine. But the members aren't declared volatile, contrary to current HotSpot "practice". Note that the accessors are not called concurrently with updates.

The accessor functions should be const.

Comments
This all got cleaned up as part of JDK-8231153. Closing this as not an issue.
14-02-2020