drm/amdgpu: Release 'adev->pm.fw' before return in 'amdgpu_device_need_post()'
authorSrinivasan Shanmugam <srinivasan.shanmugam@amd.com>
Thu, 21 Dec 2023 12:43:11 +0000 (18:13 +0530)
committerAlex Deucher <alexander.deucher@amd.com>
Mon, 15 Jan 2024 23:32:06 +0000 (18:32 -0500)
In function 'amdgpu_device_need_post(struct amdgpu_device *adev)' -
'adev->pm.fw' may not be released before return.

Using the function release_firmware() to release adev->pm.fw.

Thus fixing the below:
drivers/gpu/drm/amd/amdgpu/amdgpu_device.c:1571 amdgpu_device_need_post() warn: 'adev->pm.fw' from request_firmware() not released on lines: 1554.

Cc: Monk Liu <Monk.Liu@amd.com>
Cc: Christian König <christian.koenig@amd.com>
Cc: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: Srinivasan Shanmugam <srinivasan.shanmugam@amd.com>
Suggested-by: Lijo Lazar <lijo.lazar@amd.com>
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/amdgpu/amdgpu_device.c

index 5bb444bb36cece19b00fe27f0923c42b1bc1c83f..ecbc58269951c31151d4972d3e55e7a0b47dceb8 100644 (file)
@@ -1544,6 +1544,7 @@ bool amdgpu_device_need_post(struct amdgpu_device *adev)
                                return true;
 
                        fw_ver = *((uint32_t *)adev->pm.fw->data + 69);
+                       release_firmware(adev->pm.fw);
                        if (fw_ver < 0x00160e00)
                                return true;
                }