From 9795abb0ea19690bbd2f625e93b5c6e10d7ef96b Mon Sep 17 00:00:00 2001 From: bjorn3 <17426603+bjorn3@users.noreply.github.com> Date: Wed, 11 Mar 2026 22:03:35 +0100 Subject: [PATCH] Fix a bunch of warnings --- drivers/audio/ac97d/src/device.rs | 2 +- drivers/audio/ihdad/src/hda/device.rs | 2 +- drivers/audio/sb16d/src/device.rs | 2 +- drivers/common/src/io/mmio_ptr.rs | 6 ++---- drivers/common/src/lib.rs | 18 +++++++----------- drivers/graphics/ihdgd/src/device/bios.rs | 2 +- drivers/input/ps2d/src/controller.rs | 2 +- drivers/input/ps2d/src/state.rs | 2 +- drivers/input/usbhidd/src/main.rs | 4 +--- drivers/inputd/src/keymap.rs | 3 +-- drivers/net/rtl8168d/src/device.rs | 2 +- drivers/storage/driver-block/src/lib.rs | 5 ++--- drivers/usb/xhcid/src/driver_interface.rs | 6 +++--- drivers/virtio-core/src/transport.rs | 2 +- ramfs/src/scheme.rs | 3 --- 15 files changed, 24 insertions(+), 37 deletions(-) diff --git a/drivers/audio/ac97d/src/device.rs b/drivers/audio/ac97d/src/device.rs index e5933acac3..ed075d891b 100644 --- a/drivers/audio/ac97d/src/device.rs +++ b/drivers/audio/ac97d/src/device.rs @@ -277,7 +277,7 @@ impl SchemeSync for Ac97 { ctx: &CallerCtx, ) -> Result { { - let mut handles = self.handles.lock(); + let handles = self.handles.lock(); let handle = handles.get(&dirfd).ok_or(Error::new(EBADF))?; if !matches!(handle, Handle::SchemeRoot) { return Err(Error::new(EACCES)); diff --git a/drivers/audio/ihdad/src/hda/device.rs b/drivers/audio/ihdad/src/hda/device.rs index 134edfea76..3973914a73 100755 --- a/drivers/audio/ihdad/src/hda/device.rs +++ b/drivers/audio/ihdad/src/hda/device.rs @@ -999,7 +999,7 @@ impl SchemeSync for IntelHDA { ctx: &CallerCtx, ) -> Result { { - let mut handles = self.handles.lock(); + let handles = self.handles.lock(); let handle = handles.get(&dirfd).ok_or(Error::new(EBADF))?; if !matches!(handle, Handle::SchemeRoot) { return Err(Error::new(EACCES)); diff --git a/drivers/audio/sb16d/src/device.rs b/drivers/audio/sb16d/src/device.rs index 4e271aa614..8017b91501 100644 --- a/drivers/audio/sb16d/src/device.rs +++ b/drivers/audio/sb16d/src/device.rs @@ -200,7 +200,7 @@ impl SchemeSync for Sb16 { ctx: &CallerCtx, ) -> Result { { - let mut handles = self.handles.lock(); + let handles = self.handles.lock(); let handle = handles.get(&dirfd).ok_or(Error::new(EBADF))?; if !matches!(handle, Handle::SchemeRoot) { return Err(Error::new(EACCES)); diff --git a/drivers/common/src/io/mmio_ptr.rs b/drivers/common/src/io/mmio_ptr.rs index 31c8b0c57d..eb3704fa9e 100644 --- a/drivers/common/src/io/mmio_ptr.rs +++ b/drivers/common/src/io/mmio_ptr.rs @@ -1,5 +1,3 @@ -use core::ptr; - use super::Io; /// MMIO using pointer instead of wrapped type @@ -35,11 +33,11 @@ where type Value = T; fn read(&self) -> T { - unsafe { ptr::read_volatile(self.ptr) } + unsafe { core::ptr::read_volatile(self.ptr) } } fn write(&mut self, value: T) { - unsafe { ptr::write_volatile(self.ptr, value) }; + unsafe { core::ptr::write_volatile(self.ptr, value) }; } } diff --git a/drivers/common/src/lib.rs b/drivers/common/src/lib.rs index 9509b51f3d..ad1901ce7f 100644 --- a/drivers/common/src/lib.rs +++ b/drivers/common/src/lib.rs @@ -278,14 +278,12 @@ pub fn acquire_port_io_rights() -> Result<()> { fn redox_cur_thrfd_v0() -> usize; } let kernel_fd = syscall::dup(unsafe { redox_cur_thrfd_v0() }, b"open_via_dup")?; - let res = unsafe { - libredox::call::call_wo( - kernel_fd, - &[], - syscall::CallFlags::empty(), - &[ProcSchemeVerb::Iopl as u64], - ) - }; + let res = libredox::call::call_wo( + kernel_fd, + &[], + syscall::CallFlags::empty(), + &[ProcSchemeVerb::Iopl as u64], + ); let _ = syscall::close(kernel_fd); res?; Ok(()) @@ -310,9 +308,7 @@ impl VirtaddrTranslationHandle { /// Translate physical => virtual. pub fn translate(&self, physical: usize) -> Result { let mut buf = physical.to_ne_bytes(); - unsafe { - libredox::call::call_ro(self.fd.raw(), &mut buf, syscall::CallFlags::empty(), &[])?; - } + libredox::call::call_ro(self.fd.raw(), &mut buf, syscall::CallFlags::empty(), &[])?; Ok(usize::from_ne_bytes(buf)) } } diff --git a/drivers/graphics/ihdgd/src/device/bios.rs b/drivers/graphics/ihdgd/src/device/bios.rs index c31c9f7308..cd19af07be 100644 --- a/drivers/graphics/ihdgd/src/device/bios.rs +++ b/drivers/graphics/ihdgd/src/device/bios.rs @@ -175,7 +175,7 @@ impl Bios { //TODO: read VBT from mailbox 3 RVDA (0x3BA) and RVDS (0x3C2) if missing in mailbox 4 let vbt_addr = region.virt + 1024; - let mut vbt_header = unsafe { &*(vbt_addr as *const VbtHeader) }; + let vbt_header = unsafe { &*(vbt_addr as *const VbtHeader) }; vbt_header.dump(); //TODO: check vbt checksum diff --git a/drivers/input/ps2d/src/controller.rs b/drivers/input/ps2d/src/controller.rs index 7a34e5b604..d40d7998fe 100644 --- a/drivers/input/ps2d/src/controller.rs +++ b/drivers/input/ps2d/src/controller.rs @@ -249,7 +249,7 @@ impl Ps2 { warn!("keyboard incorrect result of set command: {command:?} {res:02X}"); return Ok(res); } - x.write(data); + x.write(data)?; x.read() }, ) diff --git a/drivers/input/ps2d/src/state.rs b/drivers/input/ps2d/src/state.rs index 08a5efee70..9018dc6b31 100644 --- a/drivers/input/ps2d/src/state.rs +++ b/drivers/input/ps2d/src/state.rs @@ -1,5 +1,5 @@ use inputd::ProducerHandle; -use log::{error, info, warn}; +use log::{error, warn}; use orbclient::{ButtonEvent, KeyEvent, MouseEvent, MouseRelativeEvent, ScrollEvent}; use std::{ convert::TryInto, diff --git a/drivers/input/usbhidd/src/main.rs b/drivers/input/usbhidd/src/main.rs index 8964a147eb..15c5b77820 100644 --- a/drivers/input/usbhidd/src/main.rs +++ b/drivers/input/usbhidd/src/main.rs @@ -290,7 +290,7 @@ fn main() -> Result<()> { loop { //TODO: get frequency from device //TODO: use sleeps when accuracy is better: thread::sleep(time::Duration::from_millis(10)); - let mut timer = time::Instant::now(); + let timer = time::Instant::now(); while timer.elapsed() < time::Duration::from_millis(1) { thread::yield_now(); } @@ -454,6 +454,4 @@ fn main() -> Result<()> { // log::trace!("took {}ms", timer.elapsed().as_millis()) } - - Ok(()) } diff --git a/drivers/inputd/src/keymap.rs b/drivers/inputd/src/keymap.rs index 801629cd6c..ca69e46e90 100644 --- a/drivers/inputd/src/keymap.rs +++ b/drivers/inputd/src/keymap.rs @@ -396,8 +396,7 @@ impl Display for KeymapKind { KeymapKind::Bepo => "bepo", KeymapKind::IT => "it", }; - f.write_str(s); - Ok(()) + f.write_str(s) } } diff --git a/drivers/net/rtl8168d/src/device.rs b/drivers/net/rtl8168d/src/device.rs index ce0675877a..ae545ec48c 100644 --- a/drivers/net/rtl8168d/src/device.rs +++ b/drivers/net/rtl8168d/src/device.rs @@ -193,7 +193,7 @@ impl Rtl8168 { mac_address: [0; 6], }; - module.init(); + module.init()?; Ok(module) } diff --git a/drivers/storage/driver-block/src/lib.rs b/drivers/storage/driver-block/src/lib.rs index b95071eee9..3d872e7987 100644 --- a/drivers/storage/driver-block/src/lib.rs +++ b/drivers/storage/driver-block/src/lib.rs @@ -16,8 +16,8 @@ use redox_scheme::{CallerCtx, OpenResult, RequestKind, Response, SignalBehavior, use syscall::dirent::DirentBuf; use syscall::schemev2::NewFdFlags; use syscall::{ - CallFlags, Error, Result, Stat, EACCES, EAGAIN, EBADF, EINTR, EINVAL, EISDIR, ENOENT, ENOLCK, - EOPNOTSUPP, EOVERFLOW, EWOULDBLOCK, MODE_DIR, MODE_FILE, O_DIRECTORY, O_STAT, + Error, Result, Stat, EACCES, EAGAIN, EBADF, EINTR, EINVAL, EISDIR, ENOENT, ENOLCK, EOPNOTSUPP, + EOVERFLOW, EWOULDBLOCK, MODE_DIR, MODE_FILE, O_DIRECTORY, O_STAT, }; /// Split the read operation into a series of block reads. @@ -339,7 +339,6 @@ impl DiskScheme { self.inner.on_close(id); continue; } - RequestKind::RecvFd(_) => continue, RequestKind::OnDetach { .. } => continue, }; self.inner diff --git a/drivers/usb/xhcid/src/driver_interface.rs b/drivers/usb/xhcid/src/driver_interface.rs index f1547dc876..727f8d7e99 100644 --- a/drivers/usb/xhcid/src/driver_interface.rs +++ b/drivers/usb/xhcid/src/driver_interface.rs @@ -551,12 +551,12 @@ impl XhciClientHandle { Ok(String::from_utf8(buf)?) } pub fn attach(&self) -> result::Result<(), XhciClientHandleError> { - let mut file = self.fd.openat("attach", libredox::flag::O_WRONLY, 0)?; + let file = self.fd.openat("attach", libredox::flag::O_WRONLY, 0)?; let _bytes_written = file.write(&[])?; Ok(()) } pub fn detach(&self) -> result::Result<(), XhciClientHandleError> { - let mut file = self.fd.openat("detach", libredox::flag::O_WRONLY, 0)?; + let file = self.fd.openat("detach", libredox::flag::O_WRONLY, 0)?; let _bytes_written = file.write(&[])?; Ok(()) } @@ -569,7 +569,7 @@ impl XhciClientHandle { req: &ConfigureEndpointsReq, ) -> result::Result<(), XhciClientHandleError> { let json = serde_json::to_vec(req)?; - let mut file = self.fd.openat("configure", libredox::flag::O_WRONLY, 0)?; + let file = self.fd.openat("configure", libredox::flag::O_WRONLY, 0)?; let json_bytes_written = file.write(&json)?; if json_bytes_written != json.len() { return Err(XhciClientHandleError::InvalidResponse(Invalid( diff --git a/drivers/virtio-core/src/transport.rs b/drivers/virtio-core/src/transport.rs index 72376fe003..38b46f0e9b 100644 --- a/drivers/virtio-core/src/transport.rs +++ b/drivers/virtio-core/src/transport.rs @@ -65,7 +65,7 @@ pub fn spawn_irq_thread(irq_handle: &File, queue: &Arc>) { .subscribe(irq_fd as usize, 0, event::EventFlags::READ) .unwrap(); - for event in event_queue.map(Result::unwrap) { + for _ in event_queue.map(Result::unwrap) { // Wake up the tasks waiting on the queue. for (_, task) in queue_copy.waker.lock().unwrap().iter() { task.wake_by_ref(); diff --git a/ramfs/src/scheme.rs b/ramfs/src/scheme.rs index e73736055b..d7dd530a63 100644 --- a/ramfs/src/scheme.rs +++ b/ramfs/src/scheme.rs @@ -30,9 +30,6 @@ enum Handle { SchemeRoot, } -// TODO: Move to relibc -const AT_REMOVEDIR: usize = 0x200; - pub struct Scheme { scheme_name: String, filesystem: Filesystem,