JDK-8078021 : SATB apply_closure_to_completed_buffer should have closure argument
  • Type: Enhancement
  • Component: hotspot
  • Sub-Component: gc
  • Affected Version: 9
  • Priority: P4
  • Status: Resolved
  • Resolution: Fixed
  • OS: generic
  • CPU: generic
  • Submitted: 2015-04-17
  • Updated: 2015-09-29
  • Resolved: 2015-04-18
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.
JDK 8 JDK 9
8u60Fixed 9 b64Fixed
Related Reports
Blocks :  
Description
SATBMarkQueueSet::apply_closure_to_completed_buffer() presently takes a worker_id index.  It uses that to look up the closure associated with the worker by a preceding call to set_closure.

There is only one caller of this apply function, CMTask::drain_satb_buffers.  It creates the desired closure, associates the closure with its worker id, and then calls apply_closure_to_completed_buffer.

We could eliminate set_closure and the underlying data structure, by simply having the apply_closure_xxx function take the closure as an argument rather than the worker id.