From 71431189c9c3900d93ae55967c14fd0f8bfd5b2e Mon Sep 17 00:00:00 2001 From: Drew Galbraith Date: Sat, 17 Aug 2024 12:53:25 -0700 Subject: [PATCH] [Zion] Ensure memory alignment of large allocations. --- zion/memory/kernel_heap.cpp | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/zion/memory/kernel_heap.cpp b/zion/memory/kernel_heap.cpp index 6ad518a..68b9b24 100644 --- a/zion/memory/kernel_heap.cpp +++ b/zion/memory/kernel_heap.cpp @@ -91,6 +91,11 @@ void* KernelHeap::Allocate(uint64_t size) { uint64_t address = next_addr_; alloc_count_ += 1; next_addr_ += size; + + // Ensure alingment for these pointers. + if (next_addr_ & 0x7) { + next_addr_ = (next_addr_ & ~0x7) + 0x8; + } return reinterpret_cast(address); }