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

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

index efc0ff84b59bdf35ba9f5b35c8e3bbf181e9750b..aefdb0a27e3bbeef58e1ee2ad7bdf9e6f1b90135 100644 (file)
@@ -576,9 +576,7 @@ int ovl_update_time(struct inode *inode, int flags)
 static int ovl_fiemap(struct inode *inode, struct fiemap_extent_info *fieinfo,
                      u64 start, u64 len)
 {
-       int err;
        struct inode *realinode = ovl_inode_realdata(inode);
-       const struct cred *old_cred;
 
        if (!realinode)
                return -EIO;
@@ -586,11 +584,8 @@ static int ovl_fiemap(struct inode *inode, struct fiemap_extent_info *fieinfo,
        if (!realinode->i_op->fiemap)
                return -EOPNOTSUPP;
 
-       old_cred = ovl_override_creds(inode->i_sb);
-       err = realinode->i_op->fiemap(realinode, fieinfo, start, len);
-       ovl_revert_creds(old_cred);
-
-       return err;
+       with_ovl_creds(inode->i_sb)
+               return realinode->i_op->fiemap(realinode, fieinfo, start, len);
 }
 
 /*