bump ext4plus

This commit is contained in:
Ashwin Naren
2026-04-16 21:06:52 -07:00
parent dbc01b8977
commit 1793e24cb8
3 changed files with 12 additions and 15 deletions

4
Cargo.lock generated
View File

@@ -307,9 +307,9 @@ dependencies = [
[[package]]
name = "ext4plus"
version = "0.1.0-alpha.7"
version = "0.1.0-beta.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9dc277b4b40b9c396d5519685fa08c9feada784011646ce7f40fa8ec68baf8e5"
checksum = "a25bd6af4472ec54e136bc5bf6e3f9556d35df5c5e554cc4092d40a57372530b"
dependencies = [
"async-lock",
"async-trait",

View File

@@ -35,7 +35,7 @@ tock-registers = { version = "0.10.1", optional = true }
# fs
async-trait = { workspace = true, optional = true }
ext4plus = { version = "0.1.0-alpha.7", optional = true }
ext4plus = { version = "0.1.0-beta.1", optional = true }
# proc_vm
object = { version = "0.38.0", default-features = false, features = ["core", "elf", "read_core"], optional = true }

View File

@@ -371,8 +371,8 @@ where
}
async fn link(&self, name: &str, inode: Arc<dyn Inode>) -> Result<()> {
let inner = self.inner.lock().await;
let inner_dir = match &*inner {
let mut inner = self.inner.lock().await;
let inner_dir = match &mut *inner {
InodeInner::Directory(d) => d,
_ => return Err(KernelError::NotSupported),
};
@@ -400,8 +400,8 @@ where
}
async fn unlink(&self, name: &str) -> Result<()> {
let inner = self.inner.lock().await;
let inner_dir = match &*inner {
let mut inner = self.inner.lock().await;
let inner_dir = match &mut *inner {
InodeInner::Directory(d) => d,
_ => return Err(KernelError::NotSupported),
};
@@ -462,10 +462,10 @@ where
.lock()
.await
.clone();
let old_parent_dir = Dir::open_inode(&fs.inner, old_parent_inode)?;
let mut old_parent_dir = Dir::open_inode(&fs.inner, old_parent_inode)?;
let inner = self.inner.lock().await;
let inner_dir = match &*inner {
let mut inner = self.inner.lock().await;
let inner_dir = match &mut *inner {
InodeInner::Directory(d) => d,
_ => return Err(KernelError::NotSupported),
};
@@ -554,14 +554,11 @@ where
}
async fn symlink(&self, name: &str, target: &Path) -> Result<()> {
let inner = self.inner.lock().await;
let inner_dir = match &*inner {
let mut inner = self.inner.lock().await;
let inner_dir = match &mut *inner {
InodeInner::Directory(d) => d,
_ => return Err(KernelError::NotSupported),
};
if inner.file_type() != ext4plus::FileType::Directory {
return Err(KernelError::NotSupported);
}
let fs = self.fs_ref.upgrade().unwrap();
fs.inner
.symlink(