1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-31 16:38:10 +00:00

Kernel: Remap all regions referring to a PurgeableVMObject on purge

Otherwise we won't get page faults next time you try to access the
purged memory.
This commit is contained in:
Andreas Kling 2019-12-09 20:05:04 +01:00
parent 92b46d9814
commit a22b7f96fc

View file

@ -1,5 +1,6 @@
#include <Kernel/VM/PurgeableVMObject.h>
#include <Kernel/VM/MemoryManager.h>
#include <Kernel/VM/PhysicalPage.h>
#include <Kernel/VM/PurgeableVMObject.h>
NonnullRefPtr<PurgeableVMObject> PurgeableVMObject::create_with_size(size_t size)
{
@ -37,5 +38,10 @@ int PurgeableVMObject::purge()
m_physical_pages[i] = nullptr;
}
m_was_purged = true;
for_each_region([&](auto& region) {
region.remap();
});
return purged_page_count;
}