From: Christian Brauner Date: Mon, 3 Nov 2025 11:26:50 +0000 (+0100) Subject: aio: use credential guards X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=84c1a329b4fce8e51958cd4f27bd62743b892a7d;p=thirdparty%2Flinux.git aio: use credential guards Use credential guards for scoped credential override with automatic restoration on scope exit. Link: https://patch.msgid.link/20251103-work-creds-guards-simple-v1-2-a3e156839e7f@kernel.org Reviewed-by: Amir Goldstein Signed-off-by: Christian Brauner --- diff --git a/fs/aio.c b/fs/aio.c index 5bc133386407..0a23a8c0717f 100644 --- a/fs/aio.c +++ b/fs/aio.c @@ -1640,10 +1640,10 @@ static int aio_write(struct kiocb *req, const struct iocb *iocb, static void aio_fsync_work(struct work_struct *work) { struct aio_kiocb *iocb = container_of(work, struct aio_kiocb, fsync.work); - const struct cred *old_cred = override_creds(iocb->fsync.creds); - iocb->ki_res.res = vfs_fsync(iocb->fsync.file, iocb->fsync.datasync); - revert_creds(old_cred); + scoped_with_creds(iocb->fsync.creds) + iocb->ki_res.res = vfs_fsync(iocb->fsync.file, iocb->fsync.datasync); + put_cred(iocb->fsync.creds); iocb_put(iocb); }