From 0a10b3c0b3be04b372f28d84e31de92d852d3f0e Mon Sep 17 00:00:00 2001 From: Mark Poliakov Date: Thu, 11 Nov 2021 22:27:19 +0200 Subject: [PATCH] refactor: fix non-doc warnings --- kernel/src/dev/serial/pl011.rs | 2 -- kernel/src/dev/tty.rs | 5 ++--- kernel/src/mem/phys/manager.rs | 4 +--- kernel/src/mem/virt/table.rs | 30 ++++++++++++------------------ libsys/src/ioctl.rs | 1 + 5 files changed, 16 insertions(+), 26 deletions(-) diff --git a/kernel/src/dev/serial/pl011.rs b/kernel/src/dev/serial/pl011.rs index 7ea171d..78d5215 100644 --- a/kernel/src/dev/serial/pl011.rs +++ b/kernel/src/dev/serial/pl011.rs @@ -10,14 +10,12 @@ use crate::dev::{ use crate::mem::virt::DeviceMemoryIo; use crate::sync::IrqSafeSpinLock; use crate::util::InitOnce; -use core::fmt; use libsys::error::Errno; use tock_registers::{ interfaces::{ReadWriteable, Readable, Writeable}, register_bitfields, register_structs, registers::{ReadOnly, ReadWrite, WriteOnly}, }; -use vfs::CharDevice; register_bitfields! { u32, diff --git a/kernel/src/dev/tty.rs b/kernel/src/dev/tty.rs index 56d2775..7985b21 100644 --- a/kernel/src/dev/tty.rs +++ b/kernel/src/dev/tty.rs @@ -9,7 +9,6 @@ use libsys::{ }; use core::mem::size_of; use crate::syscall::arg::validate_user_ptr_struct; -use vfs::CharDevice; #[derive(Debug)] struct CharRingInner { @@ -30,7 +29,7 @@ pub struct CharRing { pub trait TtyDevice: SerialDevice { fn ring(&self) -> &CharRing; - fn tty_ioctl(&self, cmd: IoctlCmd, ptr: usize, len: usize) -> Result { + fn tty_ioctl(&self, cmd: IoctlCmd, ptr: usize, _len: usize) -> Result { match cmd { IoctlCmd::TtyGetAttributes => { // TODO validate size @@ -132,7 +131,7 @@ pub trait TtyDevice: SerialDevice { let idx = data[..off].iter().rposition(|&ch| ch == b' ').unwrap_or(0); let len = off; - for i in idx..len { + for _ in idx..len { self.raw_write(b"\x1B[D \x1B[D").ok(); off -= 1; rem += 1; diff --git a/kernel/src/mem/phys/manager.rs b/kernel/src/mem/phys/manager.rs index a2ffbd1..9767758 100644 --- a/kernel/src/mem/phys/manager.rs +++ b/kernel/src/mem/phys/manager.rs @@ -2,9 +2,7 @@ use super::{PageInfo, PageUsage}; use crate::mem::{virtualize, PAGE_SIZE}; use crate::sync::IrqSafeSpinLock; use core::mem; -use libsys::{ - error::Errno, mem::{memset, memcpy} -}; +use libsys::{error::Errno, mem::memcpy}; pub unsafe trait Manager { fn alloc_page(&mut self, pu: PageUsage) -> Result; diff --git a/kernel/src/mem/virt/table.rs b/kernel/src/mem/virt/table.rs index d686fa7..e105d4b 100644 --- a/kernel/src/mem/virt/table.rs +++ b/kernel/src/mem/virt/table.rs @@ -227,7 +227,11 @@ impl Space { let src_phys = unsafe { entry.address_unchecked() }; if !entry.is_cow() { - warnln!("Entry is not marked as CoW: {:#x}, points to {:#x}", virt, src_phys); + warnln!( + "Entry is not marked as CoW: {:#x}, points to {:#x}", + virt, + src_phys + ); return Err(Errno::DoesNotExist); } @@ -270,7 +274,7 @@ impl Space { unsafe { asm!("tlbi vaae1, {}", in(reg) virt_addr); } - res.map(virt_addr, dst_phys, flags); + res.map(virt_addr, dst_phys, flags)?; } } } @@ -288,8 +292,7 @@ impl Space { } assert!(l0_entry.is_table()); - let l1_table = - unsafe { &mut *(mem::virtualize(l0_entry.address_unchecked()) as *mut Table) }; + let l1_table = &mut *(mem::virtualize(l0_entry.address_unchecked()) as *mut Table); for l1i in 0..512 { let l1_entry = l1_table[l1i]; @@ -297,8 +300,7 @@ impl Space { continue; } assert!(l1_entry.is_table()); - let l2_table = - unsafe { &mut *(mem::virtualize(l1_entry.address_unchecked()) as *mut Table) }; + let l2_table = &mut *(mem::virtualize(l1_entry.address_unchecked()) as *mut Table); for l2i in 0..512 { let entry = l2_table[l2i]; @@ -307,20 +309,12 @@ impl Space { } assert!(entry.is_table()); - unsafe { - phys::free_page(unsafe { entry.address_unchecked() }); - } - } - unsafe { - phys::free_page(unsafe { l1_entry.address_unchecked() }); + phys::free_page(entry.address_unchecked()).unwrap(); } + phys::free_page(l1_entry.address_unchecked()).unwrap(); } - unsafe { - phys::free_page(unsafe { l0_entry.address_unchecked() }); - } - } - unsafe { - memset(space as *mut Space as *mut u8, 0, 4096); + phys::free_page(l0_entry.address_unchecked()).unwrap(); } + memset(space as *mut Space as *mut u8, 0, 4096); } } diff --git a/libsys/src/ioctl.rs b/libsys/src/ioctl.rs index dd0196d..9b8d484 100644 --- a/libsys/src/ioctl.rs +++ b/libsys/src/ioctl.rs @@ -3,6 +3,7 @@ use crate::error::Errno; #[derive(Clone, Copy, Debug)] #[repr(u32)] +#[non_exhaustive] pub enum IoctlCmd { TtySetAttributes = 1, TtyGetAttributes = 2,