[PATCH 1/2] drm/radeon: fix S/R on VM systems (cayman/TN/SI)
Christian König
deathsimple at vodafone.de
Tue Mar 12 01:59:00 PDT 2013
Am 11.03.2013 22:06, schrieb alexdeucher at gmail.com:
> From: Alex Deucher <alexander.deucher at amd.com>
>
> 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=60439
>
> Tested-by: Dmitry Cherkasov <Dmitrii.Cherkasov at amd.com>
> Signed-off-by: Alex Deucher <alexander.deucher at amd.com>
> Cc: stable at vger.kernel.org
I'm still wondering how I missed that. Anyway, I have a NAK on the other
patch, but this one is:
Reviewed-by: Christian König <christian.koenig at amd.com>
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)
>
> 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);
More information about the dri-devel
mailing list