aboutsummaryrefslogtreecommitdiff
path: root/arch/x86_64/include
diff options
context:
space:
mode:
authorFabian Imhof <fabian.imhof@ost.ch>2024-12-01 11:44:30 +0000
committerFabian Imhof <fabian.imhof@ost.ch>2024-12-01 11:44:30 +0000
commitb8fd52b6b3a7f002cff58ff8da0313a684cb3ab4 (patch)
tree1c6b91cb81085edc073b1f84910acd6f23ae1c2d /arch/x86_64/include
parenteba6c94eed15b90ea8a09e4bc16ae1c0f1645dea (diff)
downloadteachos-b8fd52b6b3a7f002cff58ff8da0313a684cb3ab4.tar.xz
teachos-b8fd52b6b3a7f002cff58ff8da0313a684cb3ab4.zip
implement heap linked_list deallocate
Diffstat (limited to 'arch/x86_64/include')
-rw-r--r--arch/x86_64/include/arch/memory/heap/linked_list_allocator.hpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/arch/x86_64/include/arch/memory/heap/linked_list_allocator.hpp b/arch/x86_64/include/arch/memory/heap/linked_list_allocator.hpp
index 99d0013..2d76124 100644
--- a/arch/x86_64/include/arch/memory/heap/linked_list_allocator.hpp
+++ b/arch/x86_64/include/arch/memory/heap/linked_list_allocator.hpp
@@ -58,6 +58,9 @@ namespace teachos::arch::memory::heap
*/
auto split_free_memory_block(memory_block *& current_block, std::size_t size) -> void *;
+ auto coalesce_free_memory_block(memory_block *& previous_block, memory_block *& current_block, void * pointer,
+ std::size_t size) -> void *;
+
std::size_t heap_start; ///< Start of the allocatable heap area
std::size_t heap_end; ///< End of the allocatable heap area
memory_block * first; ///< First free entry in our memory