From 63fcc204cb567958bbfc1f039f5f522e9db87576 Mon Sep 17 00:00:00 2001 From: Jeremy Soller <jeremy@system76.com> Date: Tue, 30 Nov 2021 20:56:55 -0700 Subject: [PATCH] x86 paging refactor for debugger --- src/arch/x86_64/paging/mod.rs | 3 +++ src/context/arch/x86_64.rs | 2 +- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/src/arch/x86_64/paging/mod.rs b/src/arch/x86_64/paging/mod.rs index 70d1f0d6..b7ed9066 100644 --- a/src/arch/x86_64/paging/mod.rs +++ b/src/arch/x86_64/paging/mod.rs @@ -265,7 +265,10 @@ impl ActivePageTable { }) }; unsafe { + // Activate new page table RmmA::set_table(new_table.frame.start_address()); + // Update mapper to new page table + self.mapper = Mapper::current(); } old_table } diff --git a/src/context/arch/x86_64.rs b/src/context/arch/x86_64.rs index bebc8a2a..ebb56d0e 100644 --- a/src/context/arch/x86_64.rs +++ b/src/context/arch/x86_64.rs @@ -76,7 +76,7 @@ impl Context { } } - pub fn get_page_utable(&mut self) -> usize { + pub fn get_page_utable(&self) -> usize { self.cr3 } -- GitLab