]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
drm/amd: Fix amdgpu_device_find_parent()
authorMario Limonciello <mario.limonciello@amd.com>
Sat, 30 May 2026 07:16:25 +0000 (09:16 +0200)
committerAlex Deucher <alexander.deucher@amd.com>
Wed, 3 Jun 2026 17:47:12 +0000 (13:47 -0400)
commit eb53125a7ad9 ("drm/amd: Add dedicated helper for
amdgpu_device_find_parent()") created a dedicated helper to find
the parent device outside of the dGPU but it had a logic error
that caused it to walk all the way up the topology and return
the wrong device.

Break out of the loop when the device is found.

Reviewed-by: Alexander Deucher <alexander.deucher@amd.com>
Fixes: eb53125a7ad9 ("drm/amd: Add dedicated helper for amdgpu_device_find_parent()")
Signed-off-by: Mario Limonciello <mario.limonciello@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/amdgpu/amdgpu_device.c

index 480eeb8510f873349ef68eb97c89736bb048430b..e9a88343389c1fca0259515135ac2ad503a379fa 100644 (file)
@@ -1921,6 +1921,7 @@ static struct pci_dev *amdgpu_device_find_parent(struct amdgpu_device *adev)
        while ((parent = pci_upstream_bridge(parent))) {
                if (parent->vendor == PCI_VENDOR_ID_ATI)
                        continue;
+               break;
        }
 
        return parent;