From 9f41a1bd7f56da18a2d4fa8fca82615732e93a8c Mon Sep 17 00:00:00 2001 From: Nathan Giddings Date: Wed, 30 Aug 2023 20:35:33 -0500 Subject: [PATCH] Round buddy map size up to nearest power of 2 --- src/buddy_alloc.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/buddy_alloc.c b/src/buddy_alloc.c index 2b62205..b617e64 100644 --- a/src/buddy_alloc.c +++ b/src/buddy_alloc.c @@ -49,7 +49,7 @@ static void insert_block(buddy_descriptor_t *heap, unsigned long index, unsigned long buddy_map_size(const memory_map_t *map, unsigned long block_size) { unsigned long memory_size = compute_memory_size(map); - return sizeof(buddy_block_t) * memory_size / block_size; + return 1UL << llog2(sizeof(buddy_block_t) * memory_size / block_size); } unsigned long buddy_reserve(buddy_descriptor_t *heap, unsigned long size)