no need to set_mutator_free_after_updaterefs

This commit is contained in:
Kelvin Nilsen 2026-01-27 19:52:25 +00:00
parent ca6b9625f4
commit 26296f5dbb
4 changed files with 6 additions and 14 deletions

View File

@ -2590,12 +2590,12 @@ void ShenandoahFreeSet::prepare_to_rebuild(size_t &young_trashed_regions, size_t
}
// Return mutator free
size_t ShenandoahFreeSet::finish_rebuild(size_t young_trashed_regions, size_t old_trashed_regions, size_t old_region_count) {
void ShenandoahFreeSet::finish_rebuild(size_t young_trashed_regions, size_t old_trashed_regions, size_t old_region_count) {
shenandoah_assert_heaplocked();
size_t young_reserve(0), old_reserve(0);
if (_heap->mode()->is_generational()) {
compute_young_and_old_reserves(young_cset_regions, old_cset_regions, young_reserve, old_reserve);
compute_young_and_old_reserves(young_trashed_regions, old_trashed_regions, young_reserve, old_reserve);
} else {
young_reserve = (_heap->max_capacity() / 100) * ShenandoahEvacReserve;
old_reserve = 0;
@ -2604,7 +2604,7 @@ size_t ShenandoahFreeSet::finish_rebuild(size_t young_trashed_regions, size_t ol
// Move some of the mutator regions into the Collector and OldCollector partitions in order to satisfy
// young_reserve and old_reserve.
size_t young_used_regions, old_used_regions, young_used_bytes, old_used_bytes;
size_t mutator_free = reserve_regions(young_reserve, old_reserve, old_region_count, young_used_regions, old_used_regions,
reserve_regions(young_reserve, old_reserve, old_region_count, young_used_regions, old_used_regions,
young_used_bytes, old_used_bytes);
_total_young_regions = _heap->num_regions() - old_region_count;
_total_global_regions = _heap->num_regions();
@ -2618,7 +2618,6 @@ size_t ShenandoahFreeSet::finish_rebuild(size_t young_trashed_regions, size_t ol
// Clear the region balance until it is adjusted in preparation for a subsequent GC cycle.
_heap->old_generation()->set_region_balance(0);
}
return mutator_free;
}

View File

@ -802,9 +802,7 @@ public:
// old_trashed_regions is the number of trashed regions
// (immediate garbage at final old mark, cset regions after update refs for mixed evac)
// num_old_regions is the number of old-gen regions that have available memory for further allocations (excluding old cset)
//
// Returns allocatable memory within Mutator partition, in words.
size_t finish_rebuild(size_t young_trashed_regions, size_t old_trashed_regions, size_t num_old_regions);
void finish_rebuild(size_t young_trashed_regions, size_t old_trashed_regions, size_t num_old_regions);
// When a region is promoted in place, we add the region's available memory if it is greater than plab_min_size()
// into the old collector partition by invoking this method.

View File

@ -1125,8 +1125,7 @@ void ShenandoahFullGC::phase5_epilog() {
if (heap->mode()->is_generational()) {
ShenandoahGenerationalFullGC::compute_balances();
}
size_t mutator_free = heap->free_set()->finish_rebuild(young_trashed_regions, old_trashed_regions, num_old);
heap->set_mutator_free_after_updaterefs(mutator_free);
heap->free_set()->finish_rebuild(young_trashed_regions, old_trashed_regions, num_old);
}
// Set mark incomplete because the marking bitmaps have been reset except pinned regions.

View File

@ -684,7 +684,6 @@ protected:
inline HeapWord* allocate_from_gclab(Thread* thread, size_t size);
private:
size_t _mutator_free_after_updaterefs;
HeapWord* allocate_memory_under_lock(ShenandoahAllocRequest& request, bool& in_new_region);
HeapWord* allocate_from_gclab_slow(Thread* thread, size_t size);
HeapWord* allocate_new_gclab(size_t min_size, size_t word_size, size_t* actual_size);
@ -711,9 +710,6 @@ public:
void tlabs_retire(bool resize);
void gclabs_retire(bool resize);
inline void set_mutator_free_after_updaterefs(size_t val) { _mutator_free_after_updaterefs = val; };
inline size_t get_mutator_free_after_updaterefs() const { return _mutator_free_after_updaterefs; };
// ---------- Marking support
//
private: