mirror of
https://github.com/openjdk/jdk.git
synced 2025-08-27 23:04:50 +02:00
6896647: card marks can be deferred too long
Deferred card marks are now flushed during the gc prologue. Parallel[Scavege,OldGC] and SerialGC no longer defer card marks generated by COMPILER2 as a result of ReduceInitialCardMarks. For these cases, introduced a diagnostic option to defer the card marks, only for the purposes of testing and diagnostics. CMS and G1 continue to defer card marks. Potential performance concern related to single-threaded flushing of deferred card marks in the gc prologue will be addressed in the future. Reviewed-by: never, johnc
This commit is contained in:
parent
0917ad432e
commit
331512606a
14 changed files with 107 additions and 54 deletions
|
@ -309,6 +309,7 @@ static inline uint64_t cast_uint64_t(size_t x)
|
|||
nonstatic_field(CollectedHeap, _reserved, MemRegion) \
|
||||
nonstatic_field(SharedHeap, _perm_gen, PermGen*) \
|
||||
nonstatic_field(CollectedHeap, _barrier_set, BarrierSet*) \
|
||||
nonstatic_field(CollectedHeap, _defer_initial_card_mark, bool) \
|
||||
nonstatic_field(CollectedHeap, _is_gc_active, bool) \
|
||||
nonstatic_field(CompactibleSpace, _compaction_top, HeapWord*) \
|
||||
nonstatic_field(CompactibleSpace, _first_dead, HeapWord*) \
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue