aboutsummaryrefslogtreecommitdiffstats
path: root/fs/open.c
diff options
context:
space:
mode:
authorChristian Brauner <brauner@kernel.org>2025-11-04 13:12:36 +0100
committerChristian Brauner <brauner@kernel.org>2025-11-05 22:52:15 +0100
commit97f9d2d282c9f5647784301b4bed82f825e1c2d6 (patch)
treebca144c67deea7061a6734aa5cf43dba3c2d344b /fs/open.c
parentb7b8aca68e2e857ec16fe67ed6e1d8b3eafc2653 (diff)
downloadtip-97f9d2d282c9f5647784301b4bed82f825e1c2d6.tar.gz
open: use super write guard in do_ftruncate()
Link: https://patch.msgid.link/20251104-work-guards-v1-7-5108ac78a171@kernel.org Reviewed-by: Jan Kara <jack@suse.cz> Signed-off-by: Christian Brauner <brauner@kernel.org>
Diffstat (limited to 'fs/open.c')
-rw-r--r--fs/open.c9
1 files changed, 3 insertions, 6 deletions
diff --git a/fs/open.c b/fs/open.c
index 3d64372ecc675e..1d73a17192dac2 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)