1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-31 07:18:11 +00:00

Kernel: Never forcibly page in entire executables

We were doing this for the initial kernel-spawned userspace process(es)
to work around instability in the page fault handler. Now that the page
fault handler is more robust, we can stop worrying about this.

Specifically, the page fault handler was previous not able to handle
getting a page fault in anything but the currently executing task's
page directory.
This commit is contained in:
Andreas Kling 2019-08-26 13:18:17 +02:00
parent e29fd3cd20
commit f5d779f47e
3 changed files with 0 additions and 27 deletions

View file

@ -359,12 +359,6 @@ int Process::do_exec(String path, Vector<String> arguments, Vector<String> envir
RefPtr<Region> region = allocate_region_with_vmo(VirtualAddress(), metadata.size, vmo, 0, description->absolute_path(), PROT_READ);
ASSERT(region);
if (this != &current->process()) {
// FIXME: Don't force-load the entire executable at once, let the on-demand pager take care of it.
bool success = region->page_in();
ASSERT(success);
}
OwnPtr<ELFLoader> loader;
{
// Okay, here comes the sleight of hand, pay close attention..