]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
open: use super write guard in do_ftruncate()
authorChristian Brauner <brauner@kernel.org>
Tue, 4 Nov 2025 12:12:36 +0000 (13:12 +0100)
committerChristian Brauner <brauner@kernel.org>
Wed, 5 Nov 2025 21:52:15 +0000 (22:52 +0100)
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>
fs/open.c

index 3d64372ecc675e4795eb0a0deda10f8f67b95640..1d73a17192dac2c21b7e04ba6d28ad14ad28f38d 100644 (file)
--- 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)