[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