--- old/src/hotspot/share/gc/g1/g1CollectedHeap.cpp 2020-08-19 12:41:45.778772256 +0200 +++ new/src/hotspot/share/gc/g1/g1CollectedHeap.cpp 2020-08-19 12:41:45.470770728 +0200 @@ -877,7 +877,7 @@ if (result != NULL) { size_t size_in_regions = humongous_obj_size_in_regions(word_size); policy()->old_gen_alloc_tracker()-> - add_allocated_bytes_since_last_gc(size_in_regions * HeapRegion::GrainBytes); + add_allocated_humongous_bytes_since_last_gc(size_in_regions * HeapRegion::GrainBytes); return result; } @@ -897,6 +897,9 @@ assert(succeeded, "only way to get back a non-NULL result"); log_trace(gc, alloc)("%s: Successfully scheduled collection returning " PTR_FORMAT, Thread::current()->name(), p2i(result)); + size_t size_in_regions = humongous_obj_size_in_regions(word_size); + policy()->old_gen_alloc_tracker()-> + record_collection_pause_humongous_allocation(size_in_regions * HeapRegion::GrainBytes); return result; }