drm/amdgpu: initialize the vmid_wait with the stub fence
authorChristian König <christian.koenig@amd.com>
Tue, 1 Mar 2022 14:13:15 +0000 (15:13 +0100)
committerAlex Deucher <alexander.deucher@amd.com>
Fri, 4 Mar 2022 18:03:30 +0000 (13:03 -0500)
This way we don't need to check for NULL any more.

Signed-off-by: Christian König <christian.koenig@amd.com>
Reviewed-by: Andrey Grodzovsky <andrey.grodzovsky@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/amdgpu/amdgpu_ids.c
drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c

index be48487..92a70fb 100644 (file)
@@ -204,7 +204,7 @@ static int amdgpu_vmid_grab_idle(struct amdgpu_vm *vm,
        unsigned i;
        int r;
 
-       if (ring->vmid_wait && !dma_fence_is_signaled(ring->vmid_wait))
+       if (!dma_fence_is_signaled(ring->vmid_wait))
                return amdgpu_sync_fence(sync, ring->vmid_wait);
 
        fences = kmalloc_array(id_mgr->num_ids, sizeof(void *), GFP_KERNEL);
index 35bcb6d..7f33ae8 100644 (file)
@@ -193,6 +193,7 @@ int amdgpu_ring_init(struct amdgpu_device *adev, struct amdgpu_ring *ring,
                adev->rings[ring->idx] = ring;
                ring->num_hw_submission = sched_hw_submission;
                ring->sched_score = sched_score;
+               ring->vmid_wait = dma_fence_get_stub();
                r = amdgpu_fence_driver_init_ring(ring);
                if (r)
                        return r;