From: Christian Brauner Date: Mon, 25 Nov 2024 14:10:04 +0000 (+0100) Subject: sev-dev: avoid pointless cred reference count bump X-Git-Tag: v6.14-rc1~214^2~1^2~21 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=25fe3d58e4ba20b1ec98d7ce9067ddd234e8e448;p=thirdparty%2Fkernel%2Flinux.git sev-dev: avoid pointless cred reference count bump and fix a memory leak while at it. The new creds are created via prepare_creds() and then reverted via put_cred(revert_creds()). The additional reference count bump from override_creds() wasn't even taken into account before. Link: https://lore.kernel.org/r/20241125-work-cred-v2-8-68b9d38bb5b2@kernel.org Reviewed-by: Jeff Layton Reviewed-by: Jens Axboe Signed-off-by: Christian Brauner --- diff --git a/drivers/crypto/ccp/sev-dev.c b/drivers/crypto/ccp/sev-dev.c index 187c34b02442d..2e87ca0e292a1 100644 --- a/drivers/crypto/ccp/sev-dev.c +++ b/drivers/crypto/ccp/sev-dev.c @@ -244,7 +244,7 @@ static struct file *open_file_as_root(const char *filename, int flags, umode_t m if (!cred) return ERR_PTR(-ENOMEM); cred->fsuid = GLOBAL_ROOT_UID; - old_cred = override_creds(get_new_cred(cred)); + old_cred = override_creds(cred); fp = file_open_root(&root, filename, flags, mode); path_put(&root);