drm/amdgpu: fix multiple memory leaks in acp_hw_init
authorNavid Emamdoost <navid.emamdoost@gmail.com>
Wed, 2 Oct 2019 03:46:07 +0000 (22:46 -0500)
committerAlex Deucher <alexander.deucher@amd.com>
Wed, 2 Oct 2019 17:58:33 +0000 (12:58 -0500)
commit57be09c6e8747bf48704136d9e3f92bfb93f5725
treeb7fef045cde24100b9b292a35326c88a0fb1cba4
parent815fb4c9d7da862a47c9d2a9765a4759826c5783
drm/amdgpu: fix multiple memory leaks in acp_hw_init

In acp_hw_init there are some allocations that needs to be released in
case of failure:

1- adev->acp.acp_genpd should be released if any allocation attemp for
adev->acp.acp_cell, adev->acp.acp_res or i2s_pdata fails.
2- all of those allocations should be released if
mfd_add_hotplug_devices or pm_genpd_add_device fail.
3- Release is needed in case of time out values expire.

Reviewed-by: Christian König <christian.koenig@amd.com>
Signed-off-by: Navid Emamdoost <navid.emamdoost@gmail.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/amdgpu/amdgpu_acp.c