diff --git a/src/allocator/frame/buddy.rs b/src/allocator/frame/buddy.rs index 16240ec883..7aad111abf 100644 --- a/src/allocator/frame/buddy.rs +++ b/src/allocator/frame/buddy.rs @@ -120,7 +120,7 @@ impl BuddyAllocator { for i in 0 .. (A::PAGE_SIZE / mem::size_of::>()) { let virt = table_virt.add(i * mem::size_of::>()); let mut entry = A::read::>(virt); - let inserted = if area.base.add(area.size) == entry.base { + let inserted = if area.base.add(area.size) == { entry.base } { // Combine entry at start entry.base = area.base; entry.size += area.size; @@ -247,8 +247,8 @@ impl FrameAllocator for BuddyAllocator { let virt = self.table_virt.add(i * mem::size_of::>()); let mut entry = A::read::>(virt); - if base >= entry.base && base.add(size) <= entry.base.add(entry.size) { - let start_page = (base.data() - entry.base.data()) >> A::PAGE_SHIFT; + if base >= { entry.base } && base.add(size) <= entry.base.add(entry.size) { + let start_page = (base.data() - { entry.base }.data()) >> A::PAGE_SHIFT; for page in start_page..start_page + count.data() { let mut usage = entry.usage(page).expect("failed to get usage during free"); diff --git a/src/arch/aarch64.rs b/src/arch/aarch64.rs index 3d8711adb7..2bc24eaae0 100644 --- a/src/arch/aarch64.rs +++ b/src/arch/aarch64.rs @@ -45,7 +45,7 @@ impl Arch for AArch64Arch { } #[inline(always)] - unsafe fn invalidate(address: VirtualAddress) { + unsafe fn invalidate(_address: VirtualAddress) { //TODO: can one address be invalidated? Self::invalidate_all(); } @@ -87,8 +87,8 @@ impl Arch for AArch64Arch { Self::invalidate_all(); } - fn virt_is_valid(address: VirtualAddress) -> bool { - // FIXME + fn virt_is_valid(_address: VirtualAddress) -> bool { + //TODO: what makes an address valid on aarch64? true } } diff --git a/src/arch/mod.rs b/src/arch/mod.rs index 62c1bb5ee7..8c9b0affab 100644 --- a/src/arch/mod.rs +++ b/src/arch/mod.rs @@ -3,7 +3,6 @@ use core::ptr; use crate::{ MemoryArea, PhysicalAddress, - TableKind, VirtualAddress, }; diff --git a/src/arch/riscv64/sv39.rs b/src/arch/riscv64/sv39.rs index 2e52caeb3e..ada80010a2 100644 --- a/src/arch/riscv64/sv39.rs +++ b/src/arch/riscv64/sv39.rs @@ -4,7 +4,6 @@ use crate::{ Arch, MemoryArea, PhysicalAddress, - TableKind, VirtualAddress, }; @@ -40,7 +39,7 @@ impl Arch for RiscV64Sv39Arch { } #[inline(always)] - unsafe fn invalidate(address: VirtualAddress) { + unsafe fn invalidate(_address: VirtualAddress) { //TODO: can one address be invalidated? Self::invalidate_all(); } diff --git a/src/arch/riscv64/sv48.rs b/src/arch/riscv64/sv48.rs index a16d8391d8..8ce33331ef 100644 --- a/src/arch/riscv64/sv48.rs +++ b/src/arch/riscv64/sv48.rs @@ -4,7 +4,6 @@ use crate::{ Arch, MemoryArea, PhysicalAddress, - TableKind, VirtualAddress, }; @@ -40,7 +39,7 @@ impl Arch for RiscV64Sv48Arch { } #[inline(always)] - unsafe fn invalidate(address: VirtualAddress) { + unsafe fn invalidate(_address: VirtualAddress) { //TODO: can one address be invalidated? Self::invalidate_all(); } diff --git a/src/page/mapper.rs b/src/page/mapper.rs index 17d4b11f80..ce99c6a88e 100644 --- a/src/page/mapper.rs +++ b/src/page/mapper.rs @@ -129,7 +129,7 @@ impl PageMapper { //TODO: verify virt is aligned let mut table = self.table(); let level = table.level(); - unmap_phys_inner(virt, &mut table, level, false, &mut self.allocator).map(|(pa, pf)| (pa, pf, PageFlush::new(virt))) + unmap_phys_inner(virt, &mut table, level, unmap_parents, &mut self.allocator).map(|(pa, pf)| (pa, pf, PageFlush::new(virt))) } } unsafe fn unmap_phys_inner(virt: VirtualAddress, table: &mut PageTable, initial_level: usize, unmap_parents: bool, allocator: &mut impl FrameAllocator) -> Option<(PhysicalAddress, PageFlags)> {