From 2afaec7e226f4d8f8d5c15b75953b8422ab54765 Mon Sep 17 00:00:00 2001 From: Ashwin Naren Date: Tue, 6 Jan 2026 10:14:23 -0800 Subject: [PATCH] fix fstat for char device --- src/fs/mod.rs | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/src/fs/mod.rs b/src/fs/mod.rs index 983abfa..7b51269 100644 --- a/src/fs/mod.rs +++ b/src/fs/mod.rs @@ -399,10 +399,16 @@ impl VFS { .find_char_driver(char_dev_descriptor.major) .ok_or(FsError::NoDevice)?; - Ok(char_driver + let mut open_file = char_driver .get_device(char_dev_descriptor.minor) .ok_or(FsError::NoDevice)? - .open(flags)?) + .open(flags)?; + + if let Some(of) = Arc::get_mut(&mut open_file) { + of.update(target_inode, path.to_owned()); + } + + Ok(open_file) } FileType::Fifo => todo!(), FileType::Socket => todo!(),