From mboxrd@z Thu Jan 1 00:00:00 1970 From: =?ISO-8859-1?Q?Christian_K=F6nig?= Subject: Re: [PATCH 1/2] drm/radeon: fix S/R on VM systems (cayman/TN/SI) Date: Tue, 12 Mar 2013 09:59:00 +0100 Message-ID: <513EEE54.5040603@vodafone.de> References: <1363035984-4861-1-git-send-email-alexdeucher@gmail.com> <1363035984-4861-2-git-send-email-alexdeucher@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: QUOTED-PRINTABLE Return-path: In-Reply-To: <1363035984-4861-2-git-send-email-alexdeucher@gmail.com> Sender: stable-owner@vger.kernel.org To: alexdeucher@gmail.com Cc: dri-devel@lists.freedesktop.org, Alex Deucher , stable@vger.kernel.org List-Id: dri-devel@lists.freedesktop.org Am 11.03.2013 22:06, schrieb alexdeucher@gmail.com: > From: Alex Deucher > > We weren't properly tearing down the VM sub-alloctor > on suspend leading to bogus VM PTs on resume. > > Fixes: > https://bugs.freedesktop.org/show_bug.cgi?id=3D60439 > > Tested-by: Dmitry Cherkasov > Signed-off-by: Alex Deucher > Cc: stable@vger.kernel.org I'm still wondering how I missed that. Anyway, I have a NAK on the othe= r=20 patch, but this one is: Reviewed-by: Christian K=F6nig Christian. > --- > drivers/gpu/drm/radeon/ni.c | 1 + > drivers/gpu/drm/radeon/si.c | 1 + > 2 files changed, 2 insertions(+), 0 deletions(-) > > diff --git a/drivers/gpu/drm/radeon/ni.c b/drivers/gpu/drm/radeon/ni.= c > index 3d81ca7..e6f3989 100644 > --- a/drivers/gpu/drm/radeon/ni.c > +++ b/drivers/gpu/drm/radeon/ni.c > @@ -1780,6 +1780,7 @@ int cayman_resume(struct radeon_device *rdev) > int cayman_suspend(struct radeon_device *rdev) > { > r600_audio_fini(rdev); > + radeon_vm_manager_fini(rdev); > cayman_cp_enable(rdev, false); > cayman_dma_stop(rdev); > evergreen_irq_suspend(rdev); > diff --git a/drivers/gpu/drm/radeon/si.c b/drivers/gpu/drm/radeon/si.= c > index 9128120..bafbe32 100644 > --- a/drivers/gpu/drm/radeon/si.c > +++ b/drivers/gpu/drm/radeon/si.c > @@ -4469,6 +4469,7 @@ int si_resume(struct radeon_device *rdev) > =20 > int si_suspend(struct radeon_device *rdev) > { > + radeon_vm_manager_fini(rdev); > si_cp_enable(rdev, false); > cayman_dma_stop(rdev); > si_irq_suspend(rdev);