comparison src/share/vm/memory/collectorPolicy.cpp @ 20587:d63ce76a0f0e

8034056: assert(_heap_alignment >= _space_alignment) failed: heap_alignment less than space_alignment Reviewed-by: tschatzl, tamao
author jmasa
date Tue, 05 Aug 2014 15:41:12 -0700
parents 833b0f92429a
children 7848fc12602b
comparison
equal deleted inserted replaced
20586:03e6d34be1f5 20587:d63ce76a0f0e
181 // There is only the GenRemSet in Hotspot and only the GenRemSet::CardTable 181 // There is only the GenRemSet in Hotspot and only the GenRemSet::CardTable
182 // is supported. 182 // is supported.
183 // Requirements of any new remembered set implementations must be added here. 183 // Requirements of any new remembered set implementations must be added here.
184 size_t alignment = GenRemSet::max_alignment_constraint(GenRemSet::CardTable); 184 size_t alignment = GenRemSet::max_alignment_constraint(GenRemSet::CardTable);
185 185
186 // Parallel GC does its own alignment of the generations to avoid requiring a 186 if (UseLargePages) {
187 // large page (256M on some platforms) for the permanent generation. The 187 // In presence of large pages we have to make sure that our
188 // other collectors should also be updated to do their own alignment and then 188 // alignment is large page aware.
189 // this use of lcm() should be removed.
190 if (UseLargePages && !UseParallelGC) {
191 // in presence of large pages we have to make sure that our
192 // alignment is large page aware
193 alignment = lcm(os::large_page_size(), alignment); 189 alignment = lcm(os::large_page_size(), alignment);
194 } 190 }
195 191
196 return alignment; 192 return alignment;
197 } 193 }