]> www.infradead.org Git - users/hch/misc.git/commitdiff
drm/amdgpu/gfx12: correct cleanup of 'me' field with gfx_v12_0_me_fini()
authorWentao Liang <vulab@iscas.ac.cn>
Wed, 12 Mar 2025 06:31:06 +0000 (14:31 +0800)
committerAlex Deucher <alexander.deucher@amd.com>
Tue, 18 Mar 2025 20:29:16 +0000 (16:29 -0400)
In gfx_v12_0_cp_gfx_load_me_microcode_rs64(), gfx_v12_0_pfp_fini() is
incorrectly used to free 'me' field of 'gfx', since gfx_v12_0_pfp_fini()
can only release 'pfp' field of 'gfx'. The release function of 'me' field
should be gfx_v12_0_me_fini().

Fixes: 52cb80c12e8a ("drm/amdgpu: Add gfx v12_0 ip block support (v6)")
Signed-off-by: Wentao Liang <vulab@iscas.ac.cn>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
(cherry picked from commit ebdc52607a46cda08972888178c6aa9cd6965141)
Cc: stable@vger.kernel.org # 6.12.x
drivers/gpu/drm/amd/amdgpu/gfx_v12_0.c

index 2523221a2519d3c0f694cdb69639e6160d8b50b0..48ff00427882c454a4444867aaf6a34c1674d98a 100644 (file)
@@ -2437,7 +2437,7 @@ static int gfx_v12_0_cp_gfx_load_me_microcode_rs64(struct amdgpu_device *adev)
                                      (void **)&adev->gfx.me.me_fw_data_ptr);
        if (r) {
                dev_err(adev->dev, "(%d) failed to create me data bo\n", r);
-               gfx_v12_0_pfp_fini(adev);
+               gfx_v12_0_me_fini(adev);
                return r;
        }