[Intel-gfx] [PATCH 06/15] drm/i915: Assert no external observers when unwind a failed request alloc
Joonas Lahtinen
joonas.lahtinen at linux.intel.com
Fri Nov 25 10:39:25 UTC 2016
On pe, 2016-11-25 at 09:30 +0000, Chris Wilson wrote:
> Before we return the request back to the kmem_cache after a failed
> i915_gem_request_alloc(), we should assert that it has not been added to
> any global state tracking.
>
> Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>
> ---
> drivers/gpu/drm/i915/i915_gem_request.c | 5 +++++
> 1 file changed, 5 insertions(+)
>
> diff --git a/drivers/gpu/drm/i915/i915_gem_request.c b/drivers/gpu/drm/i915/i915_gem_request.c
> index bd7b21f70283..ed6cead22a86 100644
> --- a/drivers/gpu/drm/i915/i915_gem_request.c
> +++ b/drivers/gpu/drm/i915/i915_gem_request.c
> @@ -599,6 +599,11 @@ i915_gem_request_alloc(struct intel_engine_cs *engine,
> > return req;
>
> err_ctx:
> + /* Make sure we didn't add ourselves to external state before freeing */
> + GEM_BUG_ON(!list_empty(&req->active_list));
> + GEM_BUG_ON(!list_empty(&req->priotree.signalers_list));
> + GEM_BUG_ON(!list_empty(&req->priotree.waiters_list));
This is some paranoia already, but if you managed to hit it;
Reviewed-by: Joonas Lahtinen <joonas.lahtinen at linux.intel.com>
Regards, Joonas
--
Joonas Lahtinen
Open Source Technology Center
Intel Corporation
More information about the Intel-gfx
mailing list