mem/phys: fix incorrect reservation of page bitmap
This commit is contained in:
parent
f8b81c92da
commit
d49eeac8bf
@ -155,7 +155,7 @@ pub unsafe fn init_from_iter<I: Iterator<Item = PhysicalMemoryRegion> + Clone>(
|
||||
ARCHITECTURE.map_physical_memory(it.clone(), phys_start, phys_end)?;
|
||||
|
||||
let total_count = (phys_end - phys_start) / 0x1000;
|
||||
let page_bitmap_size = (total_count + BITMAP_WORD_SIZE - 1) / BITMAP_WORD_SIZE;
|
||||
let page_bitmap_size = (total_count + BITMAP_WORD_SIZE - 1) / (BITMAP_WORD_SIZE / 8);
|
||||
let page_bitmap_page_count = (page_bitmap_size + 0xFFF) / 0x1000;
|
||||
|
||||
let page_bitmap_phys_base = find_contiguous_region(it.clone(), page_bitmap_page_count).unwrap();
|
||||
|
Loading…
x
Reference in New Issue
Block a user