Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit cc945ce3 authored by Tom St Denis's avatar Tom St Denis Committed by Alex Deucher
Browse files

drm/amd/amdgpu: Fix memleak in cz_parse_power_table()



If one of the entries fails to be allocated then free
all of the previous entries before freeing the array which
holds their pointers.

Signed-off-by: default avatarTom St Denis <tom.stdenis@amd.com>
Reviewed-by: default avatarAlex Deucher <alexander.deucher@amd.com>
Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
parent c08770eb
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -350,6 +350,8 @@ static int cz_parse_power_table(struct amdgpu_device *adev)

		ps = kzalloc(sizeof(struct cz_ps), GFP_KERNEL);
		if (ps == NULL) {
			for (j = 0; j < i; j++)
				kfree(adev->pm.dpm.ps[j].ps_priv);
			kfree(adev->pm.dpm.ps);
			return -ENOMEM;
		}