profalloc correct arena size

This commit is contained in:
jacob 2025-06-26 01:11:02 -05:00
parent af4391300c
commit 5a14818f88
2 changed files with 20 additions and 22 deletions

View File

@ -54,7 +54,7 @@ void arena_release(struct arena *arena)
ASAN_UNPOISON(arena, arena->committed + ARENA_HEADER_SIZE); ASAN_UNPOISON(arena, arena->committed + ARENA_HEADER_SIZE);
__prof; __prof;
__proffree(arena); __proffree(arena);
gstat_sub(GSTAT_MEMORY_COMMITTED, arena->committed); gstat_sub(GSTAT_MEMORY_COMMITTED, arena->committed + ARENA_HEADER_SIZE);
gstat_sub(GSTAT_MEMORY_RESERVED, arena->reserved); gstat_sub(GSTAT_MEMORY_RESERVED, arena->reserved);
gstat_sub(GSTAT_NUM_ARENAS, 1); gstat_sub(GSTAT_NUM_ARENAS, 1);
sys_memory_release(arena); sys_memory_release(arena);
@ -93,7 +93,7 @@ void *arena_push_bytes_no_zero(struct arena *arena, u64 size, u64 align)
arena->committed += commit_bytes; arena->committed += commit_bytes;
gstat_add(GSTAT_MEMORY_COMMITTED, commit_bytes); gstat_add(GSTAT_MEMORY_COMMITTED, commit_bytes);
__proffree(arena); __proffree(arena);
__profalloc(arena, arena->committed + commit_bytes + ARENA_HEADER_SIZE); __profalloc(arena, arena->committed + ARENA_HEADER_SIZE);
ASAN_POISON(commit_address, commit_bytes); ASAN_POISON(commit_address, commit_bytes);
} }

View File

@ -3020,9 +3020,8 @@ INTERNAL SYS_THREAD_ENTRY_POINT_FUNC_DEF(evictor_thread_entry_point, arg)
} }
/* Process releases */ /* Process releases */
if (!shutdown) {
__profscope(Release);
for (u32 i = 0; i < num_fenced_releases; ++i) { for (u32 i = 0; i < num_fenced_releases; ++i) {
__profscope(Release);
struct fenced_release_data *fr = &fenced_releases[i]; struct fenced_release_data *fr = &fenced_releases[i];
switch (fr->kind) { switch (fr->kind) {
default: default:
@ -3045,7 +3044,6 @@ INTERNAL SYS_THREAD_ENTRY_POINT_FUNC_DEF(evictor_thread_entry_point, arg)
} }
} }
} }
}
arena_temp_end(temp); arena_temp_end(temp);
{ {
__profscope(Sleep); __profscope(Sleep);