From 228cfe2262544be985f5189f1f48b5e9d9fd6cc6 Mon Sep 17 00:00:00 2001 From: Yuke Peng Date: Thu, 19 Sep 2024 19:16:53 +0800 Subject: [PATCH] Preallocate some space when expanding size in ext2 --- kernel/src/fs/ext2/inode.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/kernel/src/fs/ext2/inode.rs b/kernel/src/fs/ext2/inode.rs index 067a31256..9f44fb059 100644 --- a/kernel/src/fs/ext2/inode.rs +++ b/kernel/src/fs/ext2/inode.rs @@ -960,7 +960,7 @@ impl Inner { pub fn extend_write_at(&mut self, offset: usize, reader: &mut VmReader) -> Result { let write_len = reader.remain(); let new_size = offset + write_len; - self.page_cache.resize(new_size)?; + self.page_cache.resize(new_size.align_up(BLOCK_SIZE))?; self.page_cache.pages().write(offset, reader)?; self.inode_impl.resize(new_size)?; Ok(write_len)