mirror of
https://github.com/openjdk/jdk.git
synced 2025-09-21 03:24:38 +02:00
6896603: CMS/GCH: collection_attempt_is_safe() ergo should use more recent data
Deprecated HandlePromotionFailure, removing the ability to turn off that feature, did away with one epoch look-ahead when deciding if a scavenge is likely to fail, relying on current data. Reviewed-by: jmasa, johnc, poonam
This commit is contained in:
parent
554e77efb4
commit
cbc7f8756a
14 changed files with 101 additions and 222 deletions
|
@ -142,8 +142,7 @@ jint GenCollectedHeap::initialize() {
|
|||
}
|
||||
_perm_gen = perm_gen_spec->init(heap_rs, PermSize, rem_set());
|
||||
|
||||
clear_incremental_collection_will_fail();
|
||||
clear_last_incremental_collection_failed();
|
||||
clear_incremental_collection_failed();
|
||||
|
||||
#ifndef SERIALGC
|
||||
// If we are running CMS, create the collector responsible
|
||||
|
@ -1347,17 +1346,6 @@ class GenGCEpilogueClosure: public GenCollectedHeap::GenClosure {
|
|||
};
|
||||
|
||||
void GenCollectedHeap::gc_epilogue(bool full) {
|
||||
// Remember if a partial collection of the heap failed, and
|
||||
// we did a complete collection.
|
||||
if (full && incremental_collection_will_fail()) {
|
||||
set_last_incremental_collection_failed();
|
||||
} else {
|
||||
clear_last_incremental_collection_failed();
|
||||
}
|
||||
// Clear the flag, if set; the generation gc_epilogues will set the
|
||||
// flag again if the condition persists despite the collection.
|
||||
clear_incremental_collection_will_fail();
|
||||
|
||||
#ifdef COMPILER2
|
||||
assert(DerivedPointerTable::is_empty(), "derived pointer present");
|
||||
size_t actual_gap = pointer_delta((HeapWord*) (max_uintx-3), *(end_addr()));
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue