summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristian Brauner <brauner@kernel.org>2024-11-25 15:09:59 +0100
committerChristian Brauner <brauner@kernel.org>2024-12-02 11:25:09 +0100
commitf905e00904cc5899c89897b93bebfcf6656f608e (patch)
treeefddb052a1cdbf4fe3e31c985240c1a1d6d0de99
parent95c54bc81791c210b131f2b1013942487e74896f (diff)
tree-wide: s/revert_creds()/put_cred(revert_creds_light())/g
Convert all calls to revert_creds() over to explicitly dropping reference counts in preparation for converting revert_creds() to revert_creds_light() semantics. Link: https://lore.kernel.org/r/20241125-work-cred-v2-3-68b9d38bb5b2@kernel.org Reviewed-by: Jeff Layton <jlayton@kernel.org> Reviewed-by: Jens Axboe <axboe@kernel.dk> Signed-off-by: Christian Brauner <brauner@kernel.org>
-rw-r--r--drivers/base/firmware_loader/main.c2
-rw-r--r--drivers/crypto/ccp/sev-dev.c2
-rw-r--r--drivers/target/target_core_configfs.c2
-rw-r--r--fs/aio.c2
-rw-r--r--fs/binfmt_misc.c2
-rw-r--r--fs/cachefiles/internal.h2
-rw-r--r--fs/coredump.c2
-rw-r--r--fs/nfs/localio.c4
-rw-r--r--fs/nfs/nfs4idmap.c2
-rw-r--r--fs/nfsd/auth.c2
-rw-r--r--fs/nfsd/filecache.c2
-rw-r--r--fs/nfsd/nfs4recover.c2
-rw-r--r--fs/open.c2
-rw-r--r--fs/overlayfs/copy_up.c2
-rw-r--r--fs/smb/client/cifs_spnego.c2
-rw-r--r--fs/smb/client/cifsacl.c4
-rw-r--r--fs/smb/server/smb_common.c2
-rw-r--r--io_uring/io_uring.c2
-rw-r--r--io_uring/sqpoll.c2
-rw-r--r--kernel/acct.c2
-rw-r--r--kernel/cgroup/cgroup.c2
-rw-r--r--kernel/trace/trace_events_user.c2
-rw-r--r--net/dns_resolver/dns_query.c2
23 files changed, 25 insertions, 25 deletions
diff --git a/drivers/base/firmware_loader/main.c b/drivers/base/firmware_loader/main.c
index 75eb6fd75927..b5677e173f91 100644
--- a/drivers/base/firmware_loader/main.c
+++ b/drivers/base/firmware_loader/main.c
@@ -943,7 +943,7 @@ _request_firmware(const struct firmware **firmware_p, const char *name,
} else
ret = assign_fw(fw, device);
- revert_creds(old_cred);
+ put_cred(revert_creds_light(old_cred));
put_cred(kern_cred);
out:
diff --git a/drivers/crypto/ccp/sev-dev.c b/drivers/crypto/ccp/sev-dev.c
index 2ad6e41af085..9111a51d53e0 100644
--- a/drivers/crypto/ccp/sev-dev.c
+++ b/drivers/crypto/ccp/sev-dev.c
@@ -249,7 +249,7 @@ static struct file *open_file_as_root(const char *filename, int flags, umode_t m
fp = file_open_root(&root, filename, flags, mode);
path_put(&root);
- revert_creds(old_cred);
+ put_cred(revert_creds_light(old_cred));
return fp;
}
diff --git a/drivers/target/target_core_configfs.c b/drivers/target/target_core_configfs.c
index be98d16b2c57..564bc71d2d09 100644
--- a/drivers/target/target_core_configfs.c
+++ b/drivers/target/target_core_configfs.c
@@ -3758,7 +3758,7 @@ static int __init target_core_init_configfs(void)
}
old_cred = override_creds_light(get_new_cred(kern_cred));
target_init_dbroot();
- revert_creds(old_cred);
+ put_cred(revert_creds_light(old_cred));
put_cred(kern_cred);
return 0;
diff --git a/fs/aio.c b/fs/aio.c
index a52fe2e999e7..6b987c48b671 100644
--- a/fs/aio.c
+++ b/fs/aio.c
@@ -1642,7 +1642,7 @@ static void aio_fsync_work(struct work_struct *work)
const struct cred *old_cred = override_creds_light(get_new_cred(iocb->fsync.creds));
iocb->ki_res.res = vfs_fsync(iocb->fsync.file, iocb->fsync.datasync);
- revert_creds(old_cred);
+ put_cred(revert_creds_light(old_cred));
put_cred(iocb->fsync.creds);
iocb_put(iocb);
}
diff --git a/fs/binfmt_misc.c b/fs/binfmt_misc.c
index 21eb501ae03d..586862ca8738 100644
--- a/fs/binfmt_misc.c
+++ b/fs/binfmt_misc.c
@@ -831,7 +831,7 @@ static ssize_t bm_register_write(struct file *file, const char __user *buffer,
*/
old_cred = override_creds_light(get_new_cred(file->f_cred));
f = open_exec(e->interpreter);
- revert_creds(old_cred);
+ put_cred(revert_creds_light(old_cred));
if (IS_ERR(f)) {
pr_notice("register: failed to install interpreter file %s\n",
e->interpreter);
diff --git a/fs/cachefiles/internal.h b/fs/cachefiles/internal.h
index b156cc2e0e63..809305dd5317 100644
--- a/fs/cachefiles/internal.h
+++ b/fs/cachefiles/internal.h
@@ -399,7 +399,7 @@ static inline void cachefiles_begin_secure(struct cachefiles_cache *cache,
static inline void cachefiles_end_secure(struct cachefiles_cache *cache,
const struct cred *saved_cred)
{
- revert_creds(saved_cred);
+ put_cred(revert_creds_light(saved_cred));
}
/*
diff --git a/fs/coredump.c b/fs/coredump.c
index b6aae41b80d2..ff119aaa5c31 100644
--- a/fs/coredump.c
+++ b/fs/coredump.c
@@ -781,7 +781,7 @@ fail_unlock:
kfree(argv);
kfree(cn.corename);
coredump_finish(core_dumped);
- revert_creds(old_cred);
+ put_cred(revert_creds_light(old_cred));
fail_creds:
put_cred(cred);
fail:
diff --git a/fs/nfs/localio.c b/fs/nfs/localio.c
index 98393c2efb75..deca5559a56b 100644
--- a/fs/nfs/localio.c
+++ b/fs/nfs/localio.c
@@ -384,7 +384,7 @@ static void nfs_local_call_read(struct work_struct *work)
nfs_local_read_done(iocb, status);
nfs_local_pgio_release(iocb);
- revert_creds(save_cred);
+ put_cred(revert_creds_light(save_cred));
}
static int
@@ -558,7 +558,7 @@ static void nfs_local_call_write(struct work_struct *work)
nfs_local_vfs_getattr(iocb);
nfs_local_pgio_release(iocb);
- revert_creds(save_cred);
+ put_cred(revert_creds_light(save_cred));
current->flags = old_flags;
}
diff --git a/fs/nfs/nfs4idmap.c b/fs/nfs/nfs4idmap.c
index b9442f70271d..629979b20e98 100644
--- a/fs/nfs/nfs4idmap.c
+++ b/fs/nfs/nfs4idmap.c
@@ -313,7 +313,7 @@ static ssize_t nfs_idmap_get_key(const char *name, size_t namelen,
saved_cred = override_creds_light(get_new_cred(id_resolver_cache));
rkey = nfs_idmap_request_key(name, namelen, type, idmap);
- revert_creds(saved_cred);
+ put_cred(revert_creds_light(saved_cred));
if (IS_ERR(rkey)) {
ret = PTR_ERR(rkey);
diff --git a/fs/nfsd/auth.c b/fs/nfsd/auth.c
index 614a5ec4824b..dda14811d092 100644
--- a/fs/nfsd/auth.c
+++ b/fs/nfsd/auth.c
@@ -27,7 +27,7 @@ int nfsd_setuser(struct svc_cred *cred, struct svc_export *exp)
int flags = nfsexp_flags(cred, exp);
/* discard any old override before preparing the new set */
- revert_creds(get_cred(current_real_cred()));
+ put_cred(revert_creds_light(get_cred(current_real_cred())));
new = prepare_creds();
if (!new)
return -ENOMEM;
diff --git a/fs/nfsd/filecache.c b/fs/nfsd/filecache.c
index a1cdba42c4fa..c05cd2ae8139 100644
--- a/fs/nfsd/filecache.c
+++ b/fs/nfsd/filecache.c
@@ -1248,7 +1248,7 @@ nfsd_file_acquire_local(struct net *net, struct svc_cred *cred,
beres = nfsd_file_do_acquire(NULL, net, cred, client,
fhp, may_flags, NULL, pnf, true);
- revert_creds(save_cred);
+ put_cred(revert_creds_light(save_cred));
return beres;
}
diff --git a/fs/nfsd/nfs4recover.c b/fs/nfsd/nfs4recover.c
index 886d03953d7a..bf166a23d8b4 100644
--- a/fs/nfsd/nfs4recover.c
+++ b/fs/nfsd/nfs4recover.c
@@ -89,7 +89,7 @@ nfs4_save_creds(const struct cred **original_creds)
static void
nfs4_reset_creds(const struct cred *original)
{
- revert_creds(original);
+ put_cred(revert_creds_light(original));
}
static void
diff --git a/fs/open.c b/fs/open.c
index 2459cd061f47..23c414c10883 100644
--- a/fs/open.c
+++ b/fs/open.c
@@ -523,7 +523,7 @@ out_path_release:
}
out:
if (old_cred)
- revert_creds(old_cred);
+ put_cred(revert_creds_light(old_cred));
return res;
}
diff --git a/fs/overlayfs/copy_up.c b/fs/overlayfs/copy_up.c
index 527b041213c8..0f19bdbc78a4 100644
--- a/fs/overlayfs/copy_up.c
+++ b/fs/overlayfs/copy_up.c
@@ -749,7 +749,7 @@ static int ovl_prep_cu_creds(struct dentry *dentry, struct ovl_cu_creds *cc)
static void ovl_revert_cu_creds(struct ovl_cu_creds *cc)
{
if (cc->new) {
- revert_creds(cc->old);
+ put_cred(revert_creds_light(cc->old));
put_cred(cc->new);
}
}
diff --git a/fs/smb/client/cifs_spnego.c b/fs/smb/client/cifs_spnego.c
index 721d8b1254b6..f2353bccc9f5 100644
--- a/fs/smb/client/cifs_spnego.c
+++ b/fs/smb/client/cifs_spnego.c
@@ -175,7 +175,7 @@ cifs_get_spnego_key(struct cifs_ses *sesInfo,
cifs_dbg(FYI, "key description = %s\n", description);
saved_cred = override_creds_light(get_new_cred(spnego_cred));
spnego_key = request_key(&cifs_spnego_key_type, description, "");
- revert_creds(saved_cred);
+ put_cred(revert_creds_light(saved_cred));
#ifdef CONFIG_CIFS_DEBUG2
if (cifsFYI && !IS_ERR(spnego_key)) {
diff --git a/fs/smb/client/cifsacl.c b/fs/smb/client/cifsacl.c
index b1ea4ea3de4b..81d8d9802a56 100644
--- a/fs/smb/client/cifsacl.c
+++ b/fs/smb/client/cifsacl.c
@@ -327,7 +327,7 @@ id_to_sid(unsigned int cid, uint sidtype, struct smb_sid *ssid)
out_key_put:
key_put(sidkey);
out_revert_creds:
- revert_creds(saved_cred);
+ put_cred(revert_creds_light(saved_cred));
return rc;
invalidate_key:
@@ -438,7 +438,7 @@ try_upcall_to_get_id:
out_key_put:
key_put(sidkey);
out_revert_creds:
- revert_creds(saved_cred);
+ put_cred(revert_creds_light(saved_cred));
kfree(sidstr);
/*
diff --git a/fs/smb/server/smb_common.c b/fs/smb/server/smb_common.c
index 5662f2651b8e..1bd9b9c9db70 100644
--- a/fs/smb/server/smb_common.c
+++ b/fs/smb/server/smb_common.c
@@ -800,7 +800,7 @@ void ksmbd_revert_fsids(struct ksmbd_work *work)
WARN_ON(!work->saved_cred);
cred = current_cred();
- revert_creds(work->saved_cred);
+ put_cred(revert_creds_light(work->saved_cred));
put_cred(cred);
work->saved_cred = NULL;
}
diff --git a/io_uring/io_uring.c b/io_uring/io_uring.c
index 0b25ddea943e..66b5bd9d26ab 100644
--- a/io_uring/io_uring.c
+++ b/io_uring/io_uring.c
@@ -1739,7 +1739,7 @@ static int io_issue_sqe(struct io_kiocb *req, unsigned int issue_flags)
audit_uring_exit(!ret, ret);
if (creds)
- revert_creds(creds);
+ put_cred(revert_creds_light(creds));
if (ret == IOU_OK) {
if (issue_flags & IO_URING_F_COMPLETE_DEFER)
diff --git a/io_uring/sqpoll.c b/io_uring/sqpoll.c
index 58a76d581895..42ca6e07e0f7 100644
--- a/io_uring/sqpoll.c
+++ b/io_uring/sqpoll.c
@@ -192,7 +192,7 @@ static int __io_sq_thread(struct io_ring_ctx *ctx, bool cap_entries)
if (to_submit && wq_has_sleeper(&ctx->sqo_sq_wait))
wake_up(&ctx->sqo_sq_wait);
if (creds)
- revert_creds(creds);
+ put_cred(revert_creds_light(creds));
}
return ret;
diff --git a/kernel/acct.c b/kernel/acct.c
index 8f18eb02dd41..4e28aa9e1ef2 100644
--- a/kernel/acct.c
+++ b/kernel/acct.c
@@ -541,7 +541,7 @@ static void do_acct_process(struct bsd_acct_struct *acct)
}
out:
current->signal->rlim[RLIMIT_FSIZE].rlim_cur = flim;
- revert_creds(orig_cred);
+ put_cred(revert_creds_light(orig_cred));
}
/**
diff --git a/kernel/cgroup/cgroup.c b/kernel/cgroup/cgroup.c
index 97329b4fe502..68b816955c9c 100644
--- a/kernel/cgroup/cgroup.c
+++ b/kernel/cgroup/cgroup.c
@@ -5220,7 +5220,7 @@ static ssize_t __cgroup_procs_write(struct kernfs_open_file *of, char *buf,
ret = cgroup_attach_permissions(src_cgrp, dst_cgrp,
of->file->f_path.dentry->d_sb,
threadgroup, ctx->ns);
- revert_creds(saved_cred);
+ put_cred(revert_creds_light(saved_cred));
if (ret)
goto out_finish;
diff --git a/kernel/trace/trace_events_user.c b/kernel/trace/trace_events_user.c
index 4dd7c45d227e..2fdadb2e8547 100644
--- a/kernel/trace/trace_events_user.c
+++ b/kernel/trace/trace_events_user.c
@@ -1476,7 +1476,7 @@ static int user_event_set_call_visible(struct user_event *user, bool visible)
else
ret = trace_remove_event_call(&user->call);
- revert_creds(old_cred);
+ put_cred(revert_creds_light(old_cred));
put_cred(cred);
return ret;
diff --git a/net/dns_resolver/dns_query.c b/net/dns_resolver/dns_query.c
index a54f5f841cea..297059b7e2a3 100644
--- a/net/dns_resolver/dns_query.c
+++ b/net/dns_resolver/dns_query.c
@@ -126,7 +126,7 @@ int dns_query(struct net *net,
*/
saved_cred = override_creds_light(get_new_cred(dns_resolver_cache));
rkey = request_key_net(&key_type_dns_resolver, desc, net, options);
- revert_creds(saved_cred);
+ put_cred(revert_creds_light(saved_cred));
kfree(desc);
if (IS_ERR(rkey)) {
ret = PTR_ERR(rkey);