From 5c6f460bbb5e98527f4c6f436f81c9fee49eac97 Mon Sep 17 00:00:00 2001 From: bjorn3 <17426603+bjorn3@users.noreply.github.com> Date: Thu, 16 Jul 2026 20:16:35 +0200 Subject: [PATCH] Stop using the legacy path format in fpath For fbbootlog, fbcon and the disk drivers there is no load bearing use of the fpath output. And for chan relibc already handles both the legacy and new format. --- drivers/graphics/fbbootlogd/src/scheme.rs | 2 +- drivers/graphics/fbcond/src/scheme.rs | 2 +- drivers/storage/driver-block/src/lib.rs | 2 +- ipcd/src/chan.rs | 2 +- scheme-utils/src/lib.rs | 11 ----------- 5 files changed, 4 insertions(+), 15 deletions(-) diff --git a/drivers/graphics/fbbootlogd/src/scheme.rs b/drivers/graphics/fbbootlogd/src/scheme.rs index 67bcede4d7..3c4455232e 100644 --- a/drivers/graphics/fbbootlogd/src/scheme.rs +++ b/drivers/graphics/fbbootlogd/src/scheme.rs @@ -197,7 +197,7 @@ impl SchemeSync for FbbootlogScheme { } fn fpath(&mut self, _id: usize, buf: &mut [u8], _ctx: &CallerCtx) -> Result { - FpathWriter::with_legacy(buf, "fbbootlog", |_| Ok(())) + FpathWriter::with(buf, "fbbootlog", |_| Ok(())) } fn fsync(&mut self, _id: usize, _ctx: &CallerCtx) -> Result<()> { diff --git a/drivers/graphics/fbcond/src/scheme.rs b/drivers/graphics/fbcond/src/scheme.rs index a8a497831c..dcbde34633 100644 --- a/drivers/graphics/fbcond/src/scheme.rs +++ b/drivers/graphics/fbcond/src/scheme.rs @@ -163,7 +163,7 @@ impl SchemeSync for FbconScheme { } fn fpath(&mut self, id: usize, buf: &mut [u8], _ctx: &CallerCtx) -> Result { - FpathWriter::with_legacy(buf, "fbcon", |w| { + FpathWriter::with(buf, "fbcon", |w| { let handle = self.get_vt_handle_mut(id)?; write!(w, "{}", handle.vt_i.0).unwrap(); Ok(()) diff --git a/drivers/storage/driver-block/src/lib.rs b/drivers/storage/driver-block/src/lib.rs index 315aa659d1..183bc90fc1 100644 --- a/drivers/storage/driver-block/src/lib.rs +++ b/drivers/storage/driver-block/src/lib.rs @@ -559,7 +559,7 @@ impl SchemeAsync for DiskSchemeInner { } async fn fpath(&mut self, id: usize, buf: &mut [u8], _ctx: &CallerCtx) -> Result { - FpathWriter::with_legacy(buf, &self.scheme_name, |w| { + FpathWriter::with(buf, &self.scheme_name, |w| { match *self.handles.get(id)? { Handle::List(_) => (), Handle::Disk(number) => { diff --git a/ipcd/src/chan.rs b/ipcd/src/chan.rs index ec19751283..d4a195e237 100644 --- a/ipcd/src/chan.rs +++ b/ipcd/src/chan.rs @@ -331,7 +331,7 @@ impl<'sock> SchemeSync for ChanScheme<'sock> { } } fn fpath(&mut self, id: usize, buf: &mut [u8], _ctx: &CallerCtx) -> Result { - FpathWriter::with_legacy(buf, "chan", |w| { + FpathWriter::with(buf, "chan", |w| { let handle = self.handles.get(&id).ok_or(Error::new(EBADF))?; if let Extra::SchemeRoot = handle.extra { return Ok(()); diff --git a/scheme-utils/src/lib.rs b/scheme-utils/src/lib.rs index b262939c6b..08e2380e19 100644 --- a/scheme-utils/src/lib.rs +++ b/scheme-utils/src/lib.rs @@ -92,17 +92,6 @@ impl<'a> FpathWriter<'a> { Ok(w.written) } - pub fn with_legacy( - buf: &'a mut [u8], - scheme_name: &str, - f: impl FnOnce(&mut Self) -> Result<()>, - ) -> Result { - let mut w = FpathWriter { buf, written: 0 }; - write!(w, "{scheme_name}:").unwrap(); - f(&mut w)?; - Ok(w.written) - } - pub fn push_str(&mut self, s: &str) { let count = core::cmp::min(s.len(), self.buf.len() - self.written); self.buf[self.written..self.written + count].copy_from_slice(&s.as_bytes()[..count]);