[Intel-gfx] [PATCH] drm/i915/execlists: Listen to COMPLETE context event not ACTIVE_IDLE

Michel Thierry michel.thierry at intel.com
Sat Nov 18 00:53:57 UTC 2017


On 11/17/2017 4:31 PM, Chris Wilson wrote:
> Since its inception, execlists has listened to (ACTIVE_IDLE |
> ELEMENT_SWITCH) for detecting when one context completed and it either
> continued onto the next (in port 1) or idled. We would always see
> COMPLETE | ACTIVE_IDLE on the final context-switch event, but on recent
> gen it appears that we now get separate ACTIVE_IDLE and COMPLETE events.
> In particular, the ACTIVE_IDLE events may not be coupled to a context
> (since it is a general state rather than a specific context completion
> event).
> 
> References: https://bugs.freedesktop.org/show_bug.cgi?id=103800
> References: https://bugs.freedesktop.org/show_bug.cgi?id=102035
> Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>
> Cc: Mika Kuoppala <mika.kuoppala at linux.intel.com>
> Cc: Tvrtko Ursulin <tvrtko.ursulin at intel.com>
> Cc: Joonas Lahtinen <joonas.lahtinen at linux.intel.com>
> Cc: Michal Winiarski <michal.winiarski at intel.com>
> Cc: Michel Thierry <michel.thierry at intel.com>
> ---
>   drivers/gpu/drm/i915/intel_lrc.c | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/gpu/drm/i915/intel_lrc.c b/drivers/gpu/drm/i915/intel_lrc.c
> index be6c39adebdf..768946741be5 100644
> --- a/drivers/gpu/drm/i915/intel_lrc.c
> +++ b/drivers/gpu/drm/i915/intel_lrc.c
> @@ -154,7 +154,7 @@
>   #define GEN8_CTX_STATUS_LITE_RESTORE	(1 << 15)
>   
>   #define GEN8_CTX_STATUS_COMPLETED_MASK \
> -	 (GEN8_CTX_STATUS_ACTIVE_IDLE | \
> +	 (GEN8_CTX_STATUS_COMPLETE | \
>   	  GEN8_CTX_STATUS_PREEMPTED | \
>   	  GEN8_CTX_STATUS_ELEMENT_SWITCH)
>   
> 

Long long time ago we also looked at GEN8_CTX_STATUS_COMPLETE.
I don't know about these 'recent' gens, but this change shouldn't make 
things worse.

Acked-by: Michel Thierry <michel.thierry at intel.com>


More information about the Intel-gfx mailing list