diff --git a/kernel/src/acpi/RSDT.cpp b/kernel/src/acpi/RSDT.cpp index 52ffaec7..55629461 100644 --- a/kernel/src/acpi/RSDT.cpp +++ b/kernel/src/acpi/RSDT.cpp @@ -4,6 +4,7 @@ #include "bootboot.h" #include "log/Log.h" #include "memory/MemoryManager.h" +#include "misc/utils.h" #include "std/stdio.h" #include "std/string.h" @@ -21,7 +22,7 @@ ACPI::SDTHeader* ACPI::get_rsdt_or_xsdt() cache = (SDTHeader*)MemoryManager::get_unaligned_mapping(physical); uint64_t offset = (uint64_t)physical % PAGE_SIZE; - uint64_t rsdt_pages = (offset + cache->Length) / PAGE_SIZE; + uint64_t rsdt_pages = Utilities::get_blocks_from_size(PAGE_SIZE, (offset + cache->Length)); if (rsdt_pages > 1) {