From f5c92834f79dfdf8007daa019f401c5e51a7596f Mon Sep 17 00:00:00 2001 From: Chuyan Zhang Date: Sat, 2 Dec 2023 17:37:57 -0800 Subject: Fix read/write permissions --- ayafs-core/src/memory/dir_entry.rs | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) (limited to 'ayafs-core/src/memory/dir_entry.rs') diff --git a/ayafs-core/src/memory/dir_entry.rs b/ayafs-core/src/memory/dir_entry.rs index 3880f61..ee363b2 100644 --- a/ayafs-core/src/memory/dir_entry.rs +++ b/ayafs-core/src/memory/dir_entry.rs @@ -4,7 +4,7 @@ use crate::AyaFS; use indexmap::map::Entry::Occupied; use indexmap::IndexMap; use libc::{c_int, ENOENT, ENOSPC}; -use log::debug; +use log::trace; use std::ffi::{OsStr, OsString}; use std::os::unix::ffi::OsStrExt; @@ -25,11 +25,11 @@ impl AyaFS { pub(crate) fn load_direntry_map(&mut self, index: usize, inode: &Inode) -> Result<(), c_int> { if self.dir_entry_map.contains(&index) { - debug!("load_direntry_map(ino: {}) already in cache", index); + trace!("load_direntry_map(ino: {}) already in cache", index); return Ok(()); } - debug!("load_direntry_map(ino: {}) loading", index); + trace!("load_direntry_map(ino: {}) loading", index); let mut dir_entry_map: IndexMap = IndexMap::new(); let mut entry_index: usize = 0; loop { @@ -38,11 +38,11 @@ impl AyaFS { match self.access_block::(inode, block_index_within_inode) { Some(directory_block) => { - debug!("bitmap for block is {:#b} {:#b}", directory_block.block.occupancy[0], directory_block.block.occupancy[1]); + trace!("bitmap for block is {:#b} {:#b}", directory_block.block.occupancy[0], directory_block.block.occupancy[1]); if directory_block.block.query(entry_index_within_block) { let dir_entry = &directory_block.block.entries[entry_index_within_block]; let name = dir_entry.name(); - debug!("loaded entry({:?}) for inode {}", name.as_os_str(), index); + trace!("loaded entry({:?}) for inode {}", name.as_os_str(), index); dir_entry_map.insert(name, dir_entry.clone()); } else { break; @@ -95,9 +95,9 @@ impl AyaFS { directory_block.block.reset(); } directory_block.dirty = true; - debug!("entry {} (block {} offset {}) for inode {}, name {:?}", entry_index, block_index_within_inode, entry_index_within_block, _parent_index, name); + trace!("entry {} (block {} offset {}) for inode {}, name {:?}", entry_index, block_index_within_inode, entry_index_within_block, _parent_index, name); directory_block.block.allocate(entry_index_within_block); - debug!("bitmap for block is {:#b} {:#b}", directory_block.block.occupancy[0], directory_block.block.occupancy[1]); + trace!("bitmap for block is {:#b} {:#b}", directory_block.block.occupancy[0], directory_block.block.occupancy[1]); directory_block.block.entries[entry_index_within_block] = dir_entry; } None => { @@ -168,7 +168,7 @@ impl AyaFS { ) -> Result<(), c_int> { self.load_direntry_map(parent_index, parent_inode)?; if let Some(dir_entry_map) = self.dir_entry_map.get_mut(&parent_index) { - debug!(" remove_direntry(ino: {}) using hashmap", parent_index); + trace!(" remove_direntry(ino: {}) using hashmap", parent_index); if dir_entry_map.shift_remove(name.as_ref()).is_some() { Ok(()) } else { @@ -191,7 +191,7 @@ impl AyaFS { if let Some(dir_entry_map) = self.dir_entry_map.get_mut(&parent_index) { let (entry_index, _) = dir_entry_map.insert_full(child_inode_name.to_os_string(), dir_entry); - debug!( + trace!( " add_direntry(ino: {}) using hashmap, entry {}", parent_index, entry_index ); @@ -227,7 +227,7 @@ impl AyaFS { let (entry_index, _) = dir_entry_map.insert_full(child_inode_name.to_os_string(), dir_entry); - debug!( + trace!( " add_direntry(ino: {}) using hashmap, entry {}", parent_index, entry_index ); @@ -246,7 +246,7 @@ impl AyaFS { ) -> Result { self.load_direntry_map(parent_index, parent_inode)?; if let Some(dir_entry_map) = self.dir_entry_map.get(&parent_index) { - debug!( + trace!( " get_direntry(ino: {}, name: {:?}) using hashmap", parent_index, name.as_ref() @@ -265,7 +265,7 @@ impl AyaFS { ) -> Result { self.load_direntry_map(parent_index, parent_inode)?; if let Some(dir_entry_map) = self.dir_entry_map.get(&parent_index) { - debug!( + trace!( " get_direntry(ino: {}, entry_index: {}) using hashmap", parent_index, entry_index ); -- cgit v1.2.3-70-g09d2