1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-22 19:35:06 +00:00

Kernel: Only register kernel regions with MemoryManager

We were already only tracking kernel regions, this patch just makes it
more clear by having it reflected in the name of the registration
helpers.

We also stop calling them for userspace regions, avoiding some spinlock
action in such cases.
This commit is contained in:
Andreas Kling 2022-01-15 17:01:53 +01:00
parent 4fa3c1bf2d
commit 8e0387e674
3 changed files with 13 additions and 10 deletions

View file

@ -1107,18 +1107,18 @@ bool MemoryManager::validate_user_stack(AddressSpace& space, VirtualAddress vadd
return validate_user_stack_no_lock(space, vaddr);
}
void MemoryManager::register_region(Region& region)
void MemoryManager::register_kernel_region(Region& region)
{
VERIFY(region.is_kernel());
SpinlockLocker lock(s_mm_lock);
if (region.is_kernel())
m_kernel_regions.insert(region.vaddr().get(), &region);
m_kernel_regions.insert(region.vaddr().get(), &region);
}
void MemoryManager::unregister_region(Region& region)
void MemoryManager::unregister_kernel_region(Region& region)
{
VERIFY(region.is_kernel());
SpinlockLocker lock(s_mm_lock);
if (region.is_kernel())
m_kernel_regions.remove(region.vaddr().get());
m_kernel_regions.remove(region.vaddr().get());
}
void MemoryManager::dump_kernel_regions()