summaryrefslogtreecommitdiff
path: root/Kernel/MemoryManager.h
diff options
context:
space:
mode:
authorAndreas Kling <awesomekling@gmail.com>2018-11-09 01:25:31 +0100
committerAndreas Kling <awesomekling@gmail.com>2018-11-09 01:25:31 +0100
commite71cb1c56bc21c2897734a57e8d15c76ec63e038 (patch)
tree3e2e9de1d5dd4eb8264ea76130a4e2a9dad737b2 /Kernel/MemoryManager.h
parent7b96218389ce2e69161b2a561d4f606088ff3d65 (diff)
downloadserenity-e71cb1c56bc21c2897734a57e8d15c76ec63e038.zip
Fix some paging related bugs exposed by the spawn stress test.
- Process::exec() needs to restore the original paging scope when called on a non-current process. - Add missing InterruptDisabler guards around g_processes access. - Only flush the TLB when modifying the active page tables.
Diffstat (limited to 'Kernel/MemoryManager.h')
-rw-r--r--Kernel/MemoryManager.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/Kernel/MemoryManager.h b/Kernel/MemoryManager.h
index 6c4b19f7be..6ec6c5f95c 100644
--- a/Kernel/MemoryManager.h
+++ b/Kernel/MemoryManager.h
@@ -55,6 +55,8 @@ private:
struct PageDirectory {
dword entries[1024];
RetainPtr<PhysicalPage> physical_pages[1024];
+
+ bool is_active() const;
};
class VMObject : public Retainable<VMObject> {