We should improve how we use and set GCCause in VM_CollectForMetadataAllocation to make it more clear when reading the code what is going on.
When constructing a VM_CollectForMetadataAllocation operation, we pass in a GCCause, which is not always the cause that is used, since we might also have to clear soft references as a last resort if earlier collection attemps is not enough to free up memory.
The GCCauseSetter at the start of this operation is also redundant as subsequent calls to initiate a GC set the cause themselves.
When constructing a VM_CollectForMetadataAllocation operation, we pass in a GCCause, which is not always the cause that is used, since we might also have to clear soft references as a last resort if earlier collection attemps is not enough to free up memory.
The GCCauseSetter at the start of this operation is also redundant as subsequent calls to initiate a GC set the cause themselves.
- links to
-
Review(master)
openjdk/jdk/28287