From: Christian Brauner Date: Mon, 3 Nov 2025 11:26:53 +0000 (+0100) Subject: backing-file: use credential guards for splice read X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=c3076d146e312af1ee2eff0287e298cf20774b39;p=thirdparty%2Flinux.git backing-file: use credential guards for splice read Use credential guards for scoped credential override with automatic restoration on scope exit. Link: https://patch.msgid.link/20251103-work-creds-guards-simple-v1-5-a3e156839e7f@kernel.org Reviewed-by: Amir Goldstein Signed-off-by: Christian Brauner --- diff --git a/fs/backing-file.c b/fs/backing-file.c index 2ba0f3c7f203..4d4edf906ef3 100644 --- a/fs/backing-file.c +++ b/fs/backing-file.c @@ -283,15 +283,13 @@ ssize_t backing_file_splice_read(struct file *in, struct kiocb *iocb, unsigned int flags, struct backing_file_ctx *ctx) { - const struct cred *old_cred; ssize_t ret; if (WARN_ON_ONCE(!(in->f_mode & FMODE_BACKING))) return -EIO; - old_cred = override_creds(ctx->cred); - ret = vfs_splice_read(in, &iocb->ki_pos, pipe, len, flags); - revert_creds(old_cred); + scoped_with_creds(ctx->cred) + ret = vfs_splice_read(in, &iocb->ki_pos, pipe, len, flags); if (ctx->accessed) ctx->accessed(iocb->ki_filp);