[PATCH RFC 7/8] open: use super write guard in do_ftruncate()

Christian Brauner
2025-11-04T12:12:53Z

Signed-off-by: Christian Brauner <brauner@kernel.org>
---
fs/open.c | 9 +++------
1 file changed, 3 insertions(+), 6 deletions(-)

diff --git a/fs/open.c b/fs/open.c
index 3d64372ecc67..1d73a17192da 100644
--- a/fs/open.c
+++ b/fs/open.c
@@ -191,12 +191,9 @@ int do_ftruncate(struct file *file, loff_t length, int small)
if (error)
return error;

- sb_start_write(inode->i_sb);
- error = do_truncate(file_mnt_idmap(file), dentry, length,
- ATTR_MTIME | ATTR_CTIME, file);
- sb_end_write(inode->i_sb);
-
- return error;
+ scoped_guard(super_write, inode->i_sb)
+ return do_truncate(file_mnt_idmap(file), dentry, length,
+ ATTR_MTIME | ATTR_CTIME, file);
}

int do_sys_ftruncate(unsigned int fd, loff_t length, int small)

--
2.47.3