[Intel-gfx] [PATCH] drm/i915/ttm: Abort suspend on i915_ttm_backup failure

Andrzej Hajda andrzej.hajda at intel.com
Thu Sep 1 15:57:11 UTC 2022


On 31.08.2022 18:18, Nirmoy Das wrote:
> On system suspend when system memory is low then i915_gem_obj_copy_ttm()
> could fail trying to backup a lmem obj. GEM_WARN_ON() is not enough,
> suspend shouldn't continue if i915_ttm_backup() throws an error.
> 
> References: https://gitlab.freedesktop.org/drm/intel/-/issues/6529
> Reviewed-by: Matthew Auld <matthew.auld at intel.com>
> Suggested-by: Chris P Wilson <chris.p.wilson at intel.com>
> Signed-off-by: Nirmoy Das <nirmoy.das at intel.com>
> ---
>   drivers/gpu/drm/i915/gem/i915_gem_ttm_pm.c | 7 ++++++-
>   1 file changed, 6 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/gpu/drm/i915/gem/i915_gem_ttm_pm.c b/drivers/gpu/drm/i915/gem/i915_gem_ttm_pm.c
> index 9aad84059d56..6f5d5c0909b4 100644
> --- a/drivers/gpu/drm/i915/gem/i915_gem_ttm_pm.c
> +++ b/drivers/gpu/drm/i915/gem/i915_gem_ttm_pm.c
> @@ -79,7 +79,12 @@ static int i915_ttm_backup(struct i915_gem_apply_to_region *apply,
>   		goto out_no_populate;
>   
>   	err = i915_gem_obj_copy_ttm(backup, obj, pm_apply->allow_gpu, false);
> -	GEM_WARN_ON(err);
> +	if (err) {
> +		drm_err(&i915->drm,
> +			"Unable to copy from device to system memory, err:%d\n",
> +			err);

I wonder if %pe wouldn't be better here, up to you.

Reviewed-by: Andrzej Hajda <andrzej.hajda at intel.com>

Regards
Andrzej


> +		goto out_no_populate;
> +	}
>   	ttm_bo_wait_ctx(backup_bo, &ctx);
>   
>   	obj->ttm.backup = backup;



More information about the Intel-gfx mailing list