From 02adde2aac9cff62bd51b35c7ba5b530a1cf53ec Mon Sep 17 00:00:00 2001 From: Stefan Johansson Date: Thu, 27 Nov 2014 11:09:55 +0100 Subject: [PATCH] 8065227: Report allocation context stats at end of cleanup Moved allocation context update from remark to the cleanup phase. Reviewed-by: mgerdin, jmasa --- hotspot/src/share/vm/gc_implementation/g1/concurrentMark.cpp | 2 +- .../src/share/vm/gc_implementation/g1/g1AllocationContext.hpp | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/hotspot/src/share/vm/gc_implementation/g1/concurrentMark.cpp b/hotspot/src/share/vm/gc_implementation/g1/concurrentMark.cpp index 108a3a5e637..ce8ab529c7c 100644 --- a/hotspot/src/share/vm/gc_implementation/g1/concurrentMark.cpp +++ b/hotspot/src/share/vm/gc_implementation/g1/concurrentMark.cpp @@ -2123,6 +2123,7 @@ void ConcurrentMark::cleanup() { // We reclaimed old regions so we should calculate the sizes to make // sure we update the old gen/space data. g1h->g1mm()->update_sizes(); + g1h->allocation_context_stats().update_after_mark(); g1h->trace_heap_after_concurrent_cycle(); } @@ -3243,7 +3244,6 @@ void ConcurrentMark::aggregate_count_data() { _g1h->set_par_threads(n_workers); _g1h->workers()->run_task(&g1_par_agg_task); _g1h->set_par_threads(0); - _g1h->allocation_context_stats().update_at_remark(); } // Clear the per-worker arrays used to store the per-region counting data diff --git a/hotspot/src/share/vm/gc_implementation/g1/g1AllocationContext.hpp b/hotspot/src/share/vm/gc_implementation/g1/g1AllocationContext.hpp index ae64a36b9f2..c1089268ca6 100644 --- a/hotspot/src/share/vm/gc_implementation/g1/g1AllocationContext.hpp +++ b/hotspot/src/share/vm/gc_implementation/g1/g1AllocationContext.hpp @@ -45,7 +45,7 @@ class AllocationContextStats: public StackObj { public: inline void clear() { } inline void update(bool full_gc) { } - inline void update_at_remark() { } + inline void update_after_mark() { } inline bool available() { return false; } };