fix: use rounded bitmap size in VMM kernel mapping calculation
This commit is contained in:
@@ -155,7 +155,8 @@ void VMMInitialize(VMBootMemoryMap* bootMap, Bootinfo* info) {
|
|||||||
}
|
}
|
||||||
OSLog("RAM mapped\n");
|
OSLog("RAM mapped\n");
|
||||||
|
|
||||||
Size pmmBitmapSize = (bootMap->totalRAM.size / kVMPageSize) / 8;
|
Size totalPages = bootMap->totalRAM.size / kVMPageSize;
|
||||||
|
Size pmmBitmapSize = (totalPages + kVMBlocksPerByte - 1) / kVMBlocksPerByte;
|
||||||
Size kernelSize = ((Address)_kernelEnd - (Address)_kernelStart) + pmmBitmapSize;
|
Size kernelSize = ((Address)_kernelEnd - (Address)_kernelStart) + pmmBitmapSize;
|
||||||
kernelSize = (kernelSize + kVMPageSize - 1) & ~(kVMPageSize - 1);
|
kernelSize = (kernelSize + kVMPageSize - 1) & ~(kVMPageSize - 1);
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user