drm/amd/pm: Fix a memory leak on an error path
authorKunwu.Chan <chentao@kylinos.cn>
Tue, 10 Oct 2023 06:10:39 +0000 (14:10 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 20 Nov 2023 10:59:13 +0000 (11:59 +0100)
[ Upstream commit 828f8e31379b28fe7f07fb5865b8ed099d223fca ]

Add missing free on an error path.

Fixes: 511a95552ec8 ("drm/amd/pm: Add SMU 13.0.6 support")
Reviewed-by: Yang Wang <kevinyang.wang@amd.com>
Signed-off-by: Kunwu.Chan <chentao@kylinos.cn>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/gpu/drm/amd/pm/swsmu/smu13/smu_v13_0_6_ppt.c

index de80e19..24d6811 100644 (file)
@@ -1968,8 +1968,10 @@ static ssize_t smu_v13_0_6_get_gpu_metrics(struct smu_context *smu, void **table
 
        metrics = kzalloc(sizeof(MetricsTable_t), GFP_KERNEL);
        ret = smu_v13_0_6_get_metrics_table(smu, metrics, true);
-       if (ret)
+       if (ret) {
+               kfree(metrics);
                return ret;
+       }
 
        smu_cmn_init_soft_gpu_metrics(gpu_metrics, 1, 3);