[Intel-gfx] [PATCH v2 2/5] drm/i915/selftests: Pretty print engine state when requests fail to start

Mika Kuoppala mika.kuoppala at linux.intel.com
Mon Oct 9 11:50:42 UTC 2017


Chris Wilson <chris at chris-wilson.co.uk> writes:

> During hangcheck testing, we try to execute requests following the GPU
> reset, and in particular want to try and debug when those fail.
>
> Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>
> Cc: Mika Kuoppala <mika.kuoppala at intel.com>

Reviewed-by: Mika Kuoppala <mika.kuoppala at linux.intel.com>

> ---
>  drivers/gpu/drm/i915/selftests/intel_hangcheck.c | 10 ++++++++++
>  1 file changed, 10 insertions(+)
>
> diff --git a/drivers/gpu/drm/i915/selftests/intel_hangcheck.c b/drivers/gpu/drm/i915/selftests/intel_hangcheck.c
> index 08159b268893..7e1bdd88eda3 100644
> --- a/drivers/gpu/drm/i915/selftests/intel_hangcheck.c
> +++ b/drivers/gpu/drm/i915/selftests/intel_hangcheck.c
> @@ -624,8 +624,11 @@ static int igt_wait_reset(void *arg)
>  	__i915_add_request(rq, true);
>  
>  	if (!wait_for_hang(&h, rq)) {
> +		struct drm_printer p = drm_info_printer(i915->drm.dev);
> +
>  		pr_err("Failed to start request %x, at %x\n",
>  		       rq->fence.seqno, hws_seqno(&h, rq));
> +		intel_engine_dump(rq->engine, &p);
>  
>  		i915_reset(i915, 0);
>  		i915_gem_set_wedged(i915);
> @@ -716,8 +719,12 @@ static int igt_reset_queue(void *arg)
>  			__i915_add_request(rq, true);
>  
>  			if (!wait_for_hang(&h, prev)) {
> +				struct drm_printer p = drm_info_printer(i915->drm.dev);
> +
>  				pr_err("Failed to start request %x, at %x\n",
>  				       prev->fence.seqno, hws_seqno(&h, prev));
> +				intel_engine_dump(rq->engine, &p);
> +
>  				i915_gem_request_put(rq);
>  				i915_gem_request_put(prev);
>  
> @@ -818,8 +825,11 @@ static int igt_handle_error(void *arg)
>  	__i915_add_request(rq, true);
>  
>  	if (!wait_for_hang(&h, rq)) {
> +		struct drm_printer p = drm_info_printer(i915->drm.dev);
> +
>  		pr_err("Failed to start request %x, at %x\n",
>  		       rq->fence.seqno, hws_seqno(&h, rq));
> +		intel_engine_dump(rq->engine, &p);
>  
>  		i915_reset(i915, 0);
>  		i915_gem_set_wedged(i915);
> -- 
> 2.14.2


More information about the Intel-gfx mailing list