< prev index next >

src/share/vm/gc/shared/cardGeneration.cpp

Print this page

        

*** 108,128 **** bool CardGeneration::expand(size_t bytes, size_t expand_bytes) { assert_locked_or_safepoint(Heap_lock); if (bytes == 0) { return true; // That's what grow_by(0) would return } ! size_t aligned_bytes = ReservedSpace::page_align_size_up(bytes); if (aligned_bytes == 0){ // The alignment caused the number of bytes to wrap. An expand_by(0) will // return true with the implication that an expansion was done when it // was not. A call to expand implies a best effort to expand by "bytes" // but not a guarantee. Align down to give a best effort. This is likely // the most that the generation can expand since it has some capacity to // start with. ! aligned_bytes = ReservedSpace::page_align_size_down(bytes); } ! size_t aligned_expand_bytes = ReservedSpace::page_align_size_up(expand_bytes); bool success = false; if (aligned_expand_bytes > aligned_bytes) { success = grow_by(aligned_expand_bytes); } if (!success) { --- 108,128 ---- bool CardGeneration::expand(size_t bytes, size_t expand_bytes) { assert_locked_or_safepoint(Heap_lock); if (bytes == 0) { return true; // That's what grow_by(0) would return } ! size_t aligned_bytes = ReservedSpace::page_align_up(bytes); if (aligned_bytes == 0){ // The alignment caused the number of bytes to wrap. An expand_by(0) will // return true with the implication that an expansion was done when it // was not. A call to expand implies a best effort to expand by "bytes" // but not a guarantee. Align down to give a best effort. This is likely // the most that the generation can expand since it has some capacity to // start with. ! aligned_bytes = ReservedSpace::page_align_down(bytes); } ! size_t aligned_expand_bytes = ReservedSpace::page_align_up(expand_bytes); bool success = false; if (aligned_expand_bytes > aligned_bytes) { success = grow_by(aligned_expand_bytes); } if (!success) {
*** 150,160 **** } void CardGeneration::shrink(size_t bytes) { assert_correct_size_change_locking(); ! size_t size = ReservedSpace::page_align_size_down(bytes); if (size == 0) { return; } // Shrink committed space --- 150,160 ---- } void CardGeneration::shrink(size_t bytes) { assert_correct_size_change_locking(); ! size_t size = ReservedSpace::page_align_down(bytes); if (size == 0) { return; } // Shrink committed space
< prev index next >