[Intel-gfx] [PATCH 2/2] drm/i915/selftests: Careful not to flush hang_fini on error setups

Tvrtko Ursulin tvrtko.ursulin at linux.intel.com
Mon Jul 29 07:53:27 UTC 2019


On 26/07/2019 13:54, Chris Wilson wrote:
> Smatch spotted that we test at the start of hang_fini for a valid (h->gt
> is only set after a request is created) but then used it regardless
> later on.
> 
> Fixes: cb823ed9915b ("drm/i915/gt: Use intel_gt as the primary object for handling resets")
> Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>
> Cc: Tvrtko Ursulin <tvrtko.ursulin at intel.com>
> Cc: Daniele Ceraolo Spurio <daniele.ceraolospurio at intel.com>
> ---
>   drivers/gpu/drm/i915/gt/selftest_hangcheck.c | 3 ++-
>   1 file changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/gpu/drm/i915/gt/selftest_hangcheck.c b/drivers/gpu/drm/i915/gt/selftest_hangcheck.c
> index e2fa38a1ff0f..a4fc73b4368f 100644
> --- a/drivers/gpu/drm/i915/gt/selftest_hangcheck.c
> +++ b/drivers/gpu/drm/i915/gt/selftest_hangcheck.c
> @@ -284,7 +284,8 @@ static void hang_fini(struct hang *h)
>   
>   	kernel_context_close(h->ctx);
>   
> -	igt_flush_test(h->gt->i915, I915_WAIT_LOCKED);
> +	if (h->gt)
> +		igt_flush_test(h->gt->i915, I915_WAIT_LOCKED);

I see h->gt always set in hang_init. I think it used to be not the case 
in my initial refactoring. So even the earlier check in hang_fini could 
be removed now.

Regards,

Tvrtko

>   }
>   
>   static bool wait_until_running(struct hang *h, struct i915_request *rq)
> 


More information about the Intel-gfx mailing list