From 024f3e3828fc66fd4ec16cfd3ed8a6fd5123bb08 Mon Sep 17 00:00:00 2001
From: 4lDO2 <4lDO2@protonmail.com>
Date: Fri, 30 Jun 2023 19:57:31 +0200
Subject: [PATCH] Fix deadlock, booting to shell works now.

---
 src/context/memory.rs | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/src/context/memory.rs b/src/context/memory.rs
index e00a2270..0983a80f 100644
--- a/src/context/memory.rs
+++ b/src/context/memory.rs
@@ -1237,7 +1237,7 @@ pub fn try_correcting_page_tables(faulting_page: Page, access: AccessMode) -> Re
         Provider::FmapBorrowed { ref fmap } => {
             let ctxt = Arc::clone(fmap);
             let flags = map_flags(grant_info.flags());
-            drop(addr_space);
+            drop(addr_space_guard);
 
             let (scheme_id, scheme_number) = match ctxt.file_ref.description.read() {
                 ref desc => (desc.scheme, desc.number),
@@ -1261,6 +1261,8 @@ pub fn try_correcting_page_tables(faulting_page: Page, access: AccessMode) -> Re
             addr_space_guard = addr_space_lock.write();
             addr_space = &mut *addr_space_guard;
 
+            log::info!("Got frame {:?} from external fmap", frame);
+
             frame
         }
     };
-- 
GitLab