From 55c3377c5c15f8cb4252764762efee3c85d12406 Mon Sep 17 00:00:00 2001 From: jD91mZM2 Date: Thu, 30 Jul 2020 14:21:57 +0200 Subject: [PATCH] Use VirtualAddress wrapper in user.rs --- src/scheme/user.rs | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/scheme/user.rs b/src/scheme/user.rs index 3d348c6..df6c436 100644 --- a/src/scheme/user.rs +++ b/src/scheme/user.rs @@ -30,7 +30,7 @@ pub struct UserInner { context: Weak>, todo: WaitQueue, fmap: Mutex>, FileDescriptor, Map2)>>, - funmap: Mutex>, + funmap: Mutex>, done: WaitMap, unmounting: AtomicBool, } @@ -220,7 +220,7 @@ impl UserInner { } let res = UserInner::capture_inner(&context_weak, map.address, address, map.size, map.flags, Some(desc)); if let Ok(grant_address) = res { - self.funmap.lock().insert(Region::new(grant_address, map.size), address); + self.funmap.lock().insert(Region::new(grant_address, map.size), VirtualAddress::new(address)); } packet.a = Error::mux(res.map(|addr| addr.get())); } else { @@ -453,7 +453,7 @@ impl Scheme for UserScheme { return Err(Error::new(EINVAL)); } funmap.remove(&grant); - let user = Region::new(VirtualAddress::new(user_base), grant.size()); + let user = Region::new(user_base, grant.size()); Some(grant.rebase(user, grant_address).get()) } else { None @@ -482,14 +482,14 @@ impl Scheme for UserScheme { funmap.remove(&grant); - let user = Region::new(VirtualAddress::new(user_base), grant.size()); + let user = Region::new(user_base, grant.size()); if let Some(before) = grant.before(grant_requested) { funmap.insert(before, user_base); } if let Some(after) = grant.after(grant_requested) { let start = grant.rebase(user, after.start_address()); - funmap.insert(after, start.get()); + funmap.insert(after, start); } Some(grant.rebase(user, grant_address).get())