Index: vm/gc_gen/src/mark_compact/mspace_alloc.cpp =================================================================== --- vm/gc_gen/src/mark_compact/mspace_alloc.cpp (revision 540468) +++ vm/gc_gen/src/mark_compact/mspace_alloc.cpp (working copy) @@ -19,6 +19,7 @@ */ #include "mspace.h" +#include "port_threadunsafe.h" static Boolean mspace_alloc_block(Mspace* mspace, Allocator* allocator) { @@ -36,7 +37,9 @@ } /* ok, got one */ Block_Header* alloc_block = (Block_Header*)&(mspace->blocks[allocated_idx - mspace->first_block_idx]); + UNSAFE_REGION_START mspace->alloced_size += GC_BLOCK_SIZE_BYTES; + UNSAFE_REGION_END allocator_init_free_block(allocator, alloc_block);