From 98d6b3bc853ed835919e4f09acaac05f96ec1f68 Mon Sep 17 00:00:00 2001 From: alektron Date: Fri, 10 Apr 2026 23:53:41 +0200 Subject: [PATCH] Undo change from #6398 and fix arena overcommit bug in the correct place; --- core/mem/virtual/arena.odin | 4 ++-- core/mem/virtual/virtual.odin | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/core/mem/virtual/arena.odin b/core/mem/virtual/arena.odin index bcf3ee702..1ee7cba6c 100644 --- a/core/mem/virtual/arena.odin +++ b/core/mem/virtual/arena.odin @@ -141,9 +141,9 @@ arena_alloc_unguarded :: proc(arena: ^Arena, size: uint, alignment: uint, loc := needed := mem.align_forward_uint(size, alignment) needed = max(needed, arena.default_commit_size) - block_size := max(needed, arena.minimum_block_size) + alignment + block_size := max(needed, arena.minimum_block_size) - new_block := memory_block_alloc(needed, block_size) or_return + new_block := memory_block_alloc(needed, block_size, alignment) or_return new_block.prev = arena.curr_block arena.curr_block = new_block arena.total_reserved += new_block.reserved diff --git a/core/mem/virtual/virtual.odin b/core/mem/virtual/virtual.odin index d37c61267..9d1c45d25 100644 --- a/core/mem/virtual/virtual.odin +++ b/core/mem/virtual/virtual.odin @@ -115,7 +115,7 @@ memory_block_alloc :: proc(committed, reserved: uint, alignment: uint = 0, flags } pmblock.block.committed = committed - pmblock.block.reserved = reserved + pmblock.block.reserved = total_size - uint(base_offset) return &pmblock.block, nil