]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
ovl: port ovl_fsync() to cred guard
authorChristian Brauner <brauner@kernel.org>
Mon, 17 Nov 2025 09:33:40 +0000 (10:33 +0100)
committerChristian Brauner <brauner@kernel.org>
Wed, 19 Nov 2025 20:58:21 +0000 (21:58 +0100)
Use the scoped ovl cred guard.

Link: https://patch.msgid.link/20251117-work-ovl-cred-guard-v4-9-b31603935724@kernel.org
Reviewed-by: Amir Goldstein <amir73il@gmail.com>
Signed-off-by: Christian Brauner <brauner@kernel.org>
fs/overlayfs/file.c

index 70ddb51297ce8b832b5fd1bda9b3c28518564eca..92de675b697edcbca8d43a3684f21f5ae5390283 100644 (file)
@@ -444,7 +444,6 @@ static int ovl_fsync(struct file *file, loff_t start, loff_t end, int datasync)
        enum ovl_path_type type;
        struct path upperpath;
        struct file *upperfile;
-       const struct cred *old_cred;
        int ret;
 
        ret = ovl_sync_status(OVL_FS(file_inode(file)->i_sb));
@@ -461,11 +460,8 @@ static int ovl_fsync(struct file *file, loff_t start, loff_t end, int datasync)
        if (IS_ERR(upperfile))
                return PTR_ERR(upperfile);
 
-       old_cred = ovl_override_creds(file_inode(file)->i_sb);
-       ret = vfs_fsync_range(upperfile, start, end, datasync);
-       ovl_revert_creds(old_cred);
-
-       return ret;
+       with_ovl_creds(file_inode(file)->i_sb)
+               return vfs_fsync_range(upperfile, start, end, datasync);
 }
 
 static int ovl_mmap(struct file *file, struct vm_area_struct *vma)