Re-organize code of frame allocator's pools

This commit is contained in:
Zhang Junyang
2025-03-19 15:35:12 +08:00
committed by Tate, Hongliang Tian
parent 77c4feffd6
commit ba0dc8c122
4 changed files with 146 additions and 136 deletions

View File

@ -61,12 +61,14 @@ impl GlobalFrameAllocator for FrameAllocator {
}
fn dealloc(&self, addr: Paddr, size: usize) {
self.add_free_memory(addr, size);
let guard = trap::disable_local();
per_cpu_counter::add_free_size(&guard, size);
cache::dealloc(&guard, addr, size);
}
fn add_free_memory(&self, addr: Paddr, size: usize) {
let guard = trap::disable_local();
per_cpu_counter::add_free_size(&guard, size);
cache::add_free_memory(&guard, addr, size);
pools::add_free_memory(&guard, addr, size);
}
}