diff --git a/crate/memory/src/swap/mod.rs b/crate/memory/src/swap/mod.rs index 5f47391..a161dcb 100644 --- a/crate/memory/src/swap/mod.rs +++ b/crate/memory/src/swap/mod.rs @@ -108,7 +108,7 @@ impl SwapExt { ** @param addr: VirtAddr the target page's virtual address */ pub unsafe fn set_swappable(&mut self, pt: *mut T2, addr: VirtAddr){ - let Self {ref mut page_table, ref mut swap_manager, ref mut swapper} = self; + let Self {ref mut page_table, ref mut swap_manager, ..} = self; let targetpt = &mut *(pt); let pttoken = { info!("SET_SWAPPABLE: the target page table token is {:x?}, addr is {:x?}", targetpt.token(), addr); @@ -209,7 +209,7 @@ impl SwapExt { ** the error if failed */ fn swap_out(&mut self, frame: &Frame) -> Result { - let Self {ref mut page_table, ref mut swap_manager, ref mut swapper} = self; + let Self {ref mut page_table, ref mut swapper, ..} = self; let ret = unsafe{ let pt = &mut *(frame.get_page_table() as *mut T2); pt.with(|| { diff --git a/crate/process/src/event_hub.rs b/crate/process/src/event_hub.rs index 97fa80c..62d2cec 100644 --- a/crate/process/src/event_hub.rs +++ b/crate/process/src/event_hub.rs @@ -69,6 +69,7 @@ impl EventHub { } self.timers.insert(i, timer); } + #[allow(dead_code)] pub fn get_time(&self) -> Time { self.tick } diff --git a/crate/process/src/process_manager.rs b/crate/process/src/process_manager.rs index d052470..2ca17b5 100644 --- a/crate/process/src/process_manager.rs +++ b/crate/process/src/process_manager.rs @@ -6,6 +6,7 @@ use crate::scheduler::Scheduler; use crate::event_hub::EventHub; struct Process { + #[allow(dead_code)] id: Pid, status: Status, status_after_stop: Status, diff --git a/crate/process/src/scheduler.rs b/crate/process/src/scheduler.rs index 55e10e6..a73960d 100644 --- a/crate/process/src/scheduler.rs +++ b/crate/process/src/scheduler.rs @@ -79,7 +79,7 @@ mod rr { *rest == 0 } - fn set_priority(&mut self, pid: usize, priority: u8) { + fn set_priority(&mut self, _pid: usize, _priority: u8) { } fn move_to_head(&mut self, pid: usize) { diff --git a/crate/process/src/thread.rs b/crate/process/src/thread.rs index 65406c4..7657492 100644 --- a/crate/process/src/thread.rs +++ b/crate/process/src/thread.rs @@ -23,7 +23,7 @@ fn processor() -> &'static Processor { #[linkage = "weak"] #[no_mangle] /// Construct a `Context` of the new kernel thread -fn new_kernel_context(entry: extern fn(usize) -> !, arg: usize) -> Box { +fn new_kernel_context(_entry: extern fn(usize) -> !, _arg: usize) -> Box { unimplemented!("thread: Please implement and export `new_kernel_context`") } diff --git a/kernel/src/syscall.rs b/kernel/src/syscall.rs index e438ee8..5ba5cb3 100644 --- a/kernel/src/syscall.rs +++ b/kernel/src/syscall.rs @@ -374,8 +374,10 @@ impl From for Stat { mode: match info.type_ { FileType::File => StatMode::FILE, FileType::Dir => StatMode::DIR, - #[allow(unreachable_patterns)] - _ => StatMode::NULL, + // _ => StatMode::NULL, + //Note: we should mark FileType as #[non_exhaustive] + // but it is currently not implemented for enum + // see rust-lang/rust#44109 }, nlinks: info.nlinks as u32, blocks: info.blocks as u32,