From 89cb3254b09a3d0d80eb70df60b85ead67858fd2 Mon Sep 17 00:00:00 2001 From: Taylor R Campbell Date: Mon, 27 Feb 2023 20:47:55 +0000 Subject: [PATCH] amdgpu: Fix bogus loop invariant assertions in amdgpu_gart_map. --- sys/external/bsd/drm2/dist/drm/amd/amdgpu/amdgpu_gart.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sys/external/bsd/drm2/dist/drm/amd/amdgpu/amdgpu_gart.c b/sys/external/bsd/drm2/dist/drm/amd/amdgpu/amdgpu_gart.c index ffc01e15e78e..6a906612b237 100644 --- a/sys/external/bsd/drm2/dist/drm/amd/amdgpu/amdgpu_gart.c +++ b/sys/external/bsd/drm2/dist/drm/amd/amdgpu/amdgpu_gart.c @@ -440,8 +440,9 @@ int amdgpu_gart_map(struct amdgpu_device *adev, uint64_t gpu_start, t = gpu_start / AMDGPU_GPU_PAGE_SIZE; for (i = 0; npages --> 0;) { - KASSERT(i < dmamap->dm_nsegs); for (j = 0; j < AMDGPU_GPU_PAGES_IN_CPU_PAGE; j++) { + KASSERT(i < dmamap->dm_nsegs); + KASSERT(seg_off < dmamap->dm_segs[i].ds_len); amdgpu_gmc_set_pte_pde(adev, dst, t, dmamap->dm_segs[i].ds_addr + seg_off, flags); seg_off += AMDGPU_GPU_PAGE_SIZE; @@ -449,7 +450,6 @@ int amdgpu_gart_map(struct amdgpu_device *adev, uint64_t gpu_start, i++; seg_off = 0; } - KASSERT(seg_off < dmamap->dm_segs[i].ds_len); } }