summaryrefslogtreecommitdiff
path: root/ayafs-core/src/memory/dir_entry.rs
diff options
context:
space:
mode:
authorChuyan Zhang <me@zcy.moe>2023-12-02 17:37:57 -0800
committerChuyan Zhang <me@zcy.moe>2023-12-02 17:37:57 -0800
commitf5c92834f79dfdf8007daa019f401c5e51a7596f (patch)
tree19a069a86d9131fef9c271543743e50f6ae3c2eb /ayafs-core/src/memory/dir_entry.rs
parent5ad6da0370cd33230922394817cdb4d0b1e19c93 (diff)
downloadmyfs-f5c92834f79dfdf8007daa019f401c5e51a7596f.tar.gz
myfs-f5c92834f79dfdf8007daa019f401c5e51a7596f.zip
Fix read/write permissions
Diffstat (limited to 'ayafs-core/src/memory/dir_entry.rs')
-rw-r--r--ayafs-core/src/memory/dir_entry.rs24
1 files changed, 12 insertions, 12 deletions
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<OsString, DirectoryEntry> = IndexMap::new();
let mut entry_index: usize = 0;
loop {
@@ -38,11 +38,11 @@ impl AyaFS {
match self.access_block::<DirectoryBlock>(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<DirectoryEntry, c_int> {
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<DirectoryEntry, c_int> {
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
);