Yes, we tried to fix it. it is a timing issue. But it was not a critical error. So no need to block gpu resume. In fact, We only return error when the last ring test failed in the original logic Best Regards Rex -----Original Message----- From: Michel Dänzer [mailto:michel@xxxxxxxxxxx] Sent: Thursday, March 30, 2017 2:14 PM To: Zhu, Rex Cc: amd-gfx at lists.freedesktop.org Subject: Re: [PATCH 3/3] drm/amdgpu: do not block gpu resume when cp ring test failed. On 30/03/17 02:42 PM, Rex Zhu wrote: > As kiq enabled, ring test may randomly failed because of timing. > it was not critial error, gpu can continue to resume. > > Change-Id: I5d85c7d5b5989dd6892a13b47a5322b33e8a48ac > Signed-off-by: Rex Zhu <Rex.Zhu at amd.com> > --- > drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c | 3 +-- > 1 file changed, 1 insertion(+), 2 deletions(-) > > diff --git a/drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c b/drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c > index 31b1312..cdda93b 100644 > --- a/drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c > +++ b/drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c > @@ -4975,8 +4975,7 @@ static int gfx_v8_0_kiq_resume(struct amdgpu_device *adev) > goto done; > > ring->ready = true; > - r = amdgpu_ring_test_ring(ring); > - if (r) > + if (amdgpu_ring_test_ring(ring)) > ring->ready = false; > } > > The random failures in amdgpu_ring_test_ring need to be fixed instead. Failure in there normally does mean we cannot continue. -- Earthling Michel Dänzer | http://www.amd.com Libre software enthusiast | Mesa and X developer