39 Commits

Author SHA1 Message Date
Thomas Schatzl
035d0190a3 8202017: Merge Reference Enqueuing phase with phase 3 of Reference processing
Do reference enqueuing work directly in phase 3 after every Reference.

Reviewed-by: kbarrett, sangheki
2018-05-08 10:01:29 +02:00
Thomas Schatzl
945701e945 8201492: Properly implement non-contiguous generations for Reference discovery
Collectors like G1 implementing non-contiguous generations previously used an inexact but conservative area for discovery. Concurrent and STW reference processing could discover the same reference multiple times, potentially missing referents during evacuation. So these collectors had to take extra measures while concurrent marking/reference discovery has been running. This change makes discovery exact for G1 (and any collector using non-contiguous generations) so that concurrent discovery and STW discovery discover on strictly disjoint memory areas. This means that the mentioned situation can not occur any more, and extra work is not required any more too.

Reviewed-by: kbarrett, sjohanss
2018-05-03 14:09:00 +02:00
Stefan Johansson
7f7d103c85 8191471: Elastic TLABs for G1
Reviewed-by: tschatzl, pliden
2018-05-02 13:44:46 +02:00
Thomas Schatzl
5b42f3ce0d 8200426: Make G1 code use _g1h members
Consistently use _g1h member names for cached G1CollectedHeap* variables.

Reviewed-by: sangheki, sjohanss
2018-04-18 11:36:48 +02:00
Leo Korinth
30079a437a 8201171: Cleanup in g1CollectedHeap, change CamelCase to snake_case
Reviewed-by: sjohanss, tschatzl
2018-04-05 14:25:53 +02:00
Erik Helin
b025fab0d2 8200626: Restore history for g1ConcurrentMarkThread.*
Reviewed-by: shade, sjohanss
2018-04-04 10:12:02 +02:00
Thomas Schatzl
d594ab7636 8151171: Bring g1ConcurrentMark files up to current coding conventions
Improve method naming, bracketing, use of _g1h member and general cleanup.

Reviewed-by: sangheki, sjohanss
2018-03-29 14:08:10 +02:00
Thomas Schatzl
5524494066 8199742: Clean up state flags in G1CollectorState
Remove, merge and update naming of flags in G1CollectorState

Reviewed-by: sangheki, sjohanss
2018-03-29 14:07:59 +02:00
Thomas Schatzl
7995d17bca 8199326: Remove G1 gc time stamp logic
G1 gc time stamp logic is unused completely after JDK-8180415, so removing it.

Reviewed-by: sangheki, sjohanss
2018-03-28 16:39:32 +02:00
Thomas Schatzl
83d7c657c4 8197573: Remove concurrent cleanup and secondary free list handling
Remove secondary free list and all associated functionality, moving the cleanup work into the Cleanup pause instead.

Reviewed-by: sangheki, sjohanss
2018-03-28 16:39:32 +02:00
Per Lidén
3b7962d614 8199918: Shorten names of CollectedHeap::Name members
Reviewed-by: shade, eosterlund
2018-03-28 11:38:47 +02:00
Thomas Schatzl
af7d8f0d69 8197569: Refactor eager reclaim for concurrent remembered set rebuilding
Expose information about eager reclaim region selection.

Reviewed-by: sjohanss, sangheki
2018-03-26 16:51:41 +02:00
Thomas Schatzl
697538d0a9 8199516: Remove dead code overlooked during Full GC work
Reviewed-by: sangheki, sjohanss
2018-03-14 14:09:33 +01:00
Erik Helin
779fef0b10 8199024: Remove unneccessary protected and virtual modifiers from G1CollectedHeap
Reviewed-by: kbarrett, stuefe
2018-03-12 08:16:48 +01:00
Erik Österlund
a06129a432 8195148: Collapse G1SATBCardTableModRefBS and G1SATBCardTableLoggingModRefBS into a single G1BarrierSet
Reviewed-by: ehelin, kbarrett
2018-03-06 08:36:44 +01:00
Erik Helin
7b64b02949 8197845: Remove unnecessary method G1CollectedHeap::create_g1_policy
Reviewed-by: tschatzl, sjohanss
2018-03-05 13:07:04 +01:00
Erik Helin
6fb24f87da 8197847: Remove unused file g1ParScanThreadState_ext.cpp
Reviewed-by: sjohanss, eosterlund
2018-03-05 11:32:17 +01:00
Kim Barrett
d1bd39385f 8196876: OopStorage::assert_at_safepoint clashes with assert_at_safepoint macros in g1CollectedHeap.hpp
Add shared safepoint state assertion macros.

Reviewed-by: coleenp, eosterlund
2018-03-03 23:56:08 -05:00
Erik Helin
a25238147d 8198948: Remove unused parameter evacuation_info from G1CollectedHeap::evacuate_collection_set
Reviewed-by: sjohanss, eosterlund
2018-03-02 14:47:52 +01:00
Stefan Johansson
bacf4db5bd 8198424: Remove G1AllocationContext
Reviewed-by: ehelin, tschatzl
2018-03-02 10:09:08 +01:00
Erik Österlund
95d34d138d 8195142: Refactor out card table from CardTableModRefBS to flatten the BarrierSet hierarchy
Reviewed-by: stefank, coleenp, kvn, ehelin
2018-02-26 09:34:12 +01:00
Stefan Johansson
38dcf9fdf1 8198420: Remove unused extension point AllocationContextStats
Reviewed-by: ehelin, tschatzl
2018-02-23 09:38:33 +01:00
Stefan Karlsson
5f4f3883d8 8198525: Move _size_policy out of GenCollectorPolicy into GenCollectedHeap
Reviewed-by: pliden, sjohanss
2018-02-22 18:36:32 +01:00
Stefan Karlsson
f408526f30 8198515: Extract SoftReferencePolicy code out of CollectorPolicy
Reviewed-by: pliden, sjohanss
2018-02-22 18:36:07 +01:00
Erik Österlund
0fb7dffb83 8195103: Refactor out card table from CardTableModRefBS to flatten the BarrierSet hierarchy
Reviewed-by: kbarrett, tschatzl
2018-01-10 22:48:27 +01:00
Thomas Schatzl
80fa8a7208 8196602: Change HeapRegionClosure to comply to naming conventions
Reviewed-by: kbarrett, sjohanss
2018-02-09 13:09:55 +01:00
Thomas Schatzl
6e9f44c74c 8137099: G1 needs to "upgrade" GC within the safepoint if it can't allocate during that safepoint to avoid OoME
During a minor GC, if memory allocation fails, start a full GC within the same VM operation in the same safepoint. This avoids a race where the GC locker can prevent the full GC from occurring, and a premature OoME.

Co-authored-by: Axel Siebenborn <axel.siebenborn@sap.com>
Reviewed-by: ehelin, sjohanss, phh
2018-01-11 10:40:01 +01:00
Roman Kennke
3f3f0cb67e 8191564: Refactor GC related servicability code into GC specific subclasses
Reviewed-by: ehelin, eosterlund
2017-11-30 13:40:07 +01:00
Stefan Karlsson
677e5bdaed 8191861: Move and refactor hSpaceCounters
Reviewed-by: pliden, ehelin, rkennke
2017-11-24 15:48:01 +01:00
Stefan Johansson
d21c547b0e 8189733: Cleanup Full GC setup and tear down
Reviewed-by: tschatzl, ehelin
2017-11-23 09:53:53 +01:00
Stefan Johansson
6929e0f05a 8186571: Implementation: JEP 307: Parallel Full GC for G1
Improve G1 worst-case latencies by making the full GC parallel.

Reviewed-by: tschatzl, sangheki, ehelin
2017-11-14 11:33:23 +01:00
Thomas Schatzl
5815fc9d54 8140255: Move the management of G1YoungRemSetSamplingThread from G1ConcurrentRefine
Reviewed-by: sjohanss, sangheki
2017-11-06 14:25:18 +01:00
Thomas Schatzl
b59c920e12 8149127: Rename g1/concurrentMarkThread.* to g1/g1ConcurrentMarkThread.*
Reviewed-by: sjohanss, sangheki
2017-11-06 14:24:31 +01:00
Thomas Schatzl
0757704af2 8184667: Clean up G1ConcurrentMark files
Fix naming, formatting, access control, remove unused code.

Reviewed-by: sjohanss, pliden
2017-10-23 11:46:12 +02:00
Stefan Karlsson
3fbc4aec64 8189359: Move native weak oops cleaning out of ReferenceProcessor
Reviewed-by: pliden, kbarrett
2017-10-18 21:13:35 +02:00
Erik Österlund
9adfa12663 8188919: Generalize GC thread suspend/resume at safepoints
Reviewed-by: pliden, rkennke
2017-10-17 08:51:55 +02:00
Erik Österlund
ebf1633bd2 8185141: Generalize scavengeable nmethod root handling
Reviewed-by: tschatzl, pliden, rkennke
2017-10-13 15:08:56 +02:00
Coleen Phillimore
73a801bc43 8186777: Make Klass::_java_mirror an OopHandle
Add indirection for fetching mirror so that GC doesn't have to follow CLD::_klasses

Co-authored-by: Rickard Backman <rickard.backman@oracle.com>
Reviewed-by: hseigel, thartmann, eosterlund, stefank
2017-10-03 16:42:04 -04:00
Erik Joelsson
3789983e89 8187443: Forest Consolidation: Move files to unified layout
Reviewed-by: darcy, ihse
2017-09-12 19:03:39 +02:00