]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
crypto: ccp - Fix dereferencing uninitialized error pointer
authorAshish Kalra <ashish.kalra@amd.com>
Wed, 28 May 2025 20:20:18 +0000 (20:20 +0000)
committerHerbert Xu <herbert@gondor.apana.org.au>
Fri, 13 Jun 2025 09:26:17 +0000 (17:26 +0800)
Fix below smatch warnings:
drivers/crypto/ccp/sev-dev.c:1312 __sev_platform_init_locked()
error: we previously assumed 'error' could be null

Fixes: 9770b428b1a2 ("crypto: ccp - Move dev_info/err messages for SEV/SNP init and shutdown")
Reported-by: Dan Carpenter <dan.carpenter@linaro.org>
Closes: https://lore.kernel.org/r/202505071746.eWOx5QgC-lkp@intel.com/
Signed-off-by: Ashish Kalra <ashish.kalra@amd.com>
Reviewed-by: Tom Lendacky <thomas.lendacky@amd.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
drivers/crypto/ccp/sev-dev.c

index 3451bada884e14d78b14d0f70d27c55319570c28..8fb94c5f006ae9a0299c71d285ef6d5b1a6c8168 100644 (file)
@@ -1276,9 +1276,11 @@ static int __sev_platform_init_handle_init_ex_path(struct sev_device *sev)
 
 static int __sev_platform_init_locked(int *error)
 {
-       int rc, psp_ret = SEV_RET_NO_FW_CALL;
+       int rc, psp_ret, dfflush_error;
        struct sev_device *sev;
 
+       psp_ret = dfflush_error = SEV_RET_NO_FW_CALL;
+
        if (!psp_master || !psp_master->sev_data)
                return -ENODEV;
 
@@ -1320,10 +1322,10 @@ static int __sev_platform_init_locked(int *error)
 
        /* Prepare for first SEV guest launch after INIT */
        wbinvd_on_all_cpus();
-       rc = __sev_do_cmd_locked(SEV_CMD_DF_FLUSH, NULL, error);
+       rc = __sev_do_cmd_locked(SEV_CMD_DF_FLUSH, NULL, &dfflush_error);
        if (rc) {
                dev_err(sev->dev, "SEV: DF_FLUSH failed %#x, rc %d\n",
-                       *error, rc);
+                       dfflush_error, rc);
                return rc;
        }