drm/amdgpu: cleanup amdgpu_ring_fini
authorNirmoy Das <nirmoy.das@amd.com>
Tue, 25 Feb 2020 10:31:46 +0000 (11:31 +0100)
committerAlex Deucher <alexander.deucher@amd.com>
Wed, 26 Feb 2020 19:17:33 +0000 (14:17 -0500)
cleanup amdgpu_ring_fini to check the prerequisites before changing ring->sched.ready

Signed-off-by: Nirmoy Das <nirmoy.das@amd.com>
Reviewed-by: Christian König <christian.koenig@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c

index e5c83e1..6f20b53 100644 (file)
@@ -351,12 +351,13 @@ int amdgpu_ring_init(struct amdgpu_device *adev, struct amdgpu_ring *ring,
  */
 void amdgpu_ring_fini(struct amdgpu_ring *ring)
 {
-       ring->sched.ready = false;
 
        /* Not to finish a ring which is not initialized */
        if (!(ring->adev) || !(ring->adev->rings[ring->idx]))
                return;
 
+       ring->sched.ready = false;
+
        amdgpu_device_wb_free(ring->adev, ring->rptr_offs);
        amdgpu_device_wb_free(ring->adev, ring->wptr_offs);