< prev index next >

src/share/vm/gc/g1/g1CardLiveData.cpp

Print this page
rev 10929 : [mq]: 8154838-wrong-calculation-in-livedata

@@ -58,11 +58,11 @@
 
   return map;
 }
 
 void G1CardLiveData::free_large_bitmap(bm_word_t* bitmap, size_t size_in_bits) {
-  MmapArrayAllocator<bm_word_t, mtGC>::free(bitmap, size_in_bits / BitsPerWord);
+  MmapArrayAllocator<bm_word_t, mtGC>::free(bitmap, BitMap::calc_size_in_words(size_in_bits));
 }
 
 void G1CardLiveData::initialize(size_t max_capacity, uint num_max_regions) {
   assert(max_capacity % num_max_regions == 0,
          "Given capacity must be evenly divisible by region size.");
< prev index next >