From: Christian Brauner Date: Mon, 25 Nov 2024 14:10:22 +0000 (+0100) Subject: dns_resolver: avoid pointless cred reference count bump X-Git-Tag: v6.14-rc1~214^2~1^2~3 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=9e8534f5ae4f506b6fbda62add578d629c657816;p=thirdparty%2Fkernel%2Flinux.git 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 Reviewed-by: Jens Axboe Signed-off-by: Christian Brauner --- diff --git a/net/dns_resolver/dns_query.c b/net/dns_resolver/dns_query.c index 0b0789fe21941..82b084cc1cc63 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);