From 3516b8a69087c31d45d06329ab79e9017301f6b8 Mon Sep 17 00:00:00 2001 From: Freya Murphy Date: Fri, 18 Apr 2025 21:18:59 -0400 Subject: set mmap limit --- kernel/mboot/mmap.c | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'kernel/mboot/mmap.c') diff --git a/kernel/mboot/mmap.c b/kernel/mboot/mmap.c index e0963ca..d1d3d9a 100644 --- a/kernel/mboot/mmap.c +++ b/kernel/mboot/mmap.c @@ -1,3 +1,5 @@ +#include "comus/memory.h" +#include "lib/klib.h" #include #include @@ -32,6 +34,8 @@ int mboot_get_mmap(struct memory_map *res) uintptr_t i = (uintptr_t)mmap->entries; for (; i < (uintptr_t)mmap->entries + mmap->size; i += mmap->entry_size, idx++) { + if (idx >= N_MMAP_ENTRY) + panic("Too many mmap entries: limit is %d", N_MMAP_ENTRY); struct multiboot_mmap_entry *seg = (struct multiboot_mmap_entry *)i; res->entries[idx].addr = seg->addr; res->entries[idx].len = seg->len; -- cgit v1.2.3-freya