]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
backing-file: use credential guards for mmap
authorChristian Brauner <brauner@kernel.org>
Mon, 3 Nov 2025 11:26:55 +0000 (12:26 +0100)
committerChristian Brauner <brauner@kernel.org>
Tue, 4 Nov 2025 11:36:38 +0000 (12:36 +0100)
Use credential guards for scoped credential override with automatic
restoration on scope exit.

Link: https://patch.msgid.link/20251103-work-creds-guards-simple-v1-7-a3e156839e7f@kernel.org
Reviewed-by: Amir Goldstein <amir73il@gmail.com>
Signed-off-by: Christian Brauner <brauner@kernel.org>
fs/backing-file.c

index 87ff918320c54add19a6960ee402e52f877fc368..ea137be16331d97654cc4362c5dd30f0760e56f3 100644 (file)
@@ -331,7 +331,6 @@ EXPORT_SYMBOL_GPL(backing_file_splice_write);
 int backing_file_mmap(struct file *file, struct vm_area_struct *vma,
                      struct backing_file_ctx *ctx)
 {
-       const struct cred *old_cred;
        struct file *user_file = vma->vm_file;
        int ret;
 
@@ -343,9 +342,8 @@ int backing_file_mmap(struct file *file, struct vm_area_struct *vma,
 
        vma_set_file(vma, file);
 
-       old_cred = override_creds(ctx->cred);
-       ret = vfs_mmap(vma->vm_file, vma);
-       revert_creds(old_cred);
+       scoped_with_creds(ctx->cred)
+               ret = vfs_mmap(vma->vm_file, vma);
 
        if (ctx->accessed)
                ctx->accessed(user_file);