Am 18.10.22 um 11:04 schrieb Arunpravin Paneer Selvam:
A user reported a bug on CAPE VERDE system where uvd_v3_1
IP component failed to initialize as there is an issue with
BO move code from one memory to other.

In function amdgpu_mem_visible() called by amdgpu_bo_move(),
when there are no blocks to compare or if we have a single
block then break the loop.

Fixes: 312b4dc11d4f ("drm/amdgpu: Fix VRAM BO swap issue")
Signed-off-by: Arunpravin Paneer Selvam <[email protected]>

Reviewed-by: Christian König <[email protected]>

---
  drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c | 3 +++
  1 file changed, 3 insertions(+)

diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c 
b/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c
index dc262d2c2925..57277b1cf183 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c
@@ -439,6 +439,9 @@ static bool amdgpu_mem_visible(struct amdgpu_device *adev,
        while (cursor.remaining) {
                amdgpu_res_next(&cursor, cursor.size);
+ if (!cursor.remaining)
+                       break;
+
                /* ttm_resource_ioremap only supports contiguous memory */
                if (end != cursor.start)
                        return false;

Reply via email to