X-Git-Url: http://git.megacz.com/?p=ghc-hetmet.git;a=blobdiff_plain;f=rts%2FArena.c;h=fcdc6cce147210ab6be6b9547bff19e4ad22391b;hp=b2b5ce2d5a5992bc2ea7d184cb911024415a1ca0;hb=8604da0136707cc14845d14a88c2272fe576b6d0;hpb=ab0e778ccfde61aed4c22679b24d175fc6cc9bf3 diff --git a/rts/Arena.c b/rts/Arena.c index b2b5ce2..fcdc6cc 100644 --- a/rts/Arena.c +++ b/rts/Arena.c @@ -42,7 +42,7 @@ newArena( void ) Arena *arena; arena = stgMallocBytes(sizeof(Arena), "newArena"); - arena->current = allocBlock(); + arena->current = allocBlock_lock(); arena->current->link = NULL; arena->free = arena->current->start; arena->lim = arena->current->start + BLOCK_SIZE_W; @@ -81,7 +81,7 @@ arenaAlloc( Arena *arena, size_t size ) } else { // allocate a fresh block... req_blocks = (lnat)BLOCK_ROUND_UP(size) / BLOCK_SIZE; - bd = allocGroup(req_blocks); + bd = allocGroup_lock(req_blocks); arena_blocks += req_blocks; bd->gen_no = 0; @@ -106,7 +106,7 @@ arenaFree( Arena *arena ) next = bd->link; arena_blocks -= bd->blocks; ASSERT(arena_blocks >= 0); - freeGroup(bd); + freeGroup_lock(bd); } stgFree(arena); }