summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristian Brauner <brauner@kernel.org>2024-11-25 15:10:22 +0100
committerChristian Brauner <brauner@kernel.org>2024-12-02 11:25:14 +0100
commit9e8534f5ae4f506b6fbda62add578d629c657816 (patch)
tree8ca269958ab378949c7fba6f09ca67ba2c96bce9
parentaeca632b3160b654769d6224e264fff9f03f4a9b (diff)
dns_resolver: avoid pointless cred reference count bump
The dns_resolver_cache creds hold a long-term reference that is stable during the operation. Link: https://lore.kernel.org/r/20241125-work-cred-v2-26-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--net/dns_resolver/dns_query.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/net/dns_resolver/dns_query.c b/net/dns_resolver/dns_query.c
index 0b0789fe2194..82b084cc1cc6 100644
--- a/net/dns_resolver/dns_query.c
+++ b/net/dns_resolver/dns_query.c
@@ -124,9 +124,9 @@ int dns_query(struct net *net,
/* make the upcall, using special credentials to prevent the use of
* add_key() to preinstall malicious redirections
*/
- saved_cred = override_creds(get_new_cred(dns_resolver_cache));
+ saved_cred = override_creds(dns_resolver_cache);
rkey = request_key_net(&key_type_dns_resolver, desc, net, options);
- put_cred(revert_creds(saved_cred));
+ revert_creds(saved_cred);
kfree(desc);
if (IS_ERR(rkey)) {
ret = PTR_ERR(rkey);