Skip to content

Commit 872a21f

Browse files
committed
improve readability of the mmap
1 parent 5fcf05e commit 872a21f

File tree

1 file changed

+9
-6
lines changed

1 file changed

+9
-6
lines changed

src/syscalls/mman.rs

Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,9 @@ use core::ffi::{c_int, c_void};
44
use align_address::Align;
55
use free_list::{PageLayout, PageRange, PageRangeSub};
66
use hermit_sync::InterruptSpinMutex;
7-
use memory_addresses::{PhysAddr, VirtAddr};
7+
#[cfg(not(feature = "common-os"))]
8+
use memory_addresses::PhysAddr;
9+
use memory_addresses::VirtAddr;
810

911
use crate::arch;
1012
#[cfg(target_arch = "x86_64")]
@@ -47,7 +49,7 @@ bitflags! {
4749
pub extern "C" fn sys_mmap(size: usize, prot_flags: MemoryProtection, ret: &mut *mut u8) -> i32 {
4850
let size = size.align_up(BasePageSize::SIZE as usize);
4951

50-
if *ret == core::ptr::null_mut() {
52+
if (*ret).is_null() {
5153
let layout = PageLayout::from_size(size).unwrap();
5254
let page_range = KERNEL_FREE_LIST.lock().allocate(layout).unwrap();
5355

@@ -132,6 +134,7 @@ pub extern "C" fn sys_mmap(size: usize, prot_flags: MemoryProtection, ret: &mut
132134
}
133135
}
134136

137+
#[cfg(not(feature = "common-os"))]
135138
pub(crate) fn resolve_page_fault(virtual_address: VirtAddr) -> Result<(), ()> {
136139
let virtual_address = virtual_address.align_down(BasePageSize::SIZE);
137140
let current_range =
@@ -160,7 +163,7 @@ pub(crate) fn resolve_page_fault(virtual_address: VirtAddr) -> Result<(), ()> {
160163

161164
let slice = unsafe {
162165
alloc::slice::from_raw_parts_mut(
163-
virtual_address.as_mut_ptr() as *mut u8,
166+
virtual_address.as_mut_ptr(),
164167
BasePageSize::SIZE as usize,
165168
)
166169
};
@@ -185,7 +188,7 @@ pub(crate) fn resolve_page_fault(virtual_address: VirtAddr) -> Result<(), ()> {
185188
if region.prot_flags.contains(MemoryProtection::Write) {
186189
let slice = unsafe {
187190
alloc::slice::from_raw_parts_mut(
188-
virtual_address.as_mut_ptr() as *mut u8,
191+
virtual_address.as_mut_ptr(),
189192
BasePageSize::SIZE as usize,
190193
)
191194
};
@@ -250,7 +253,7 @@ pub extern "C" fn sys_munmap(ptr: *mut u8, size: usize) -> i32 {
250253
};
251254
memory_regions.push_back(memory_region2);
252255
}
253-
_ => {}
256+
PageRangeSub::None => {}
254257
}
255258
}
256259

@@ -332,7 +335,7 @@ pub extern "C" fn sys_mprotect(ptr: *mut u8, size: usize, prot_flags: MemoryProt
332335
};
333336
memory_regions.push_back(memory_region);
334337
}
335-
_ => {}
338+
PageRangeSub::None => {}
336339
}
337340

338341
break;

0 commit comments

Comments
 (0)