Hi Sebastian,

[...]

> --- a/drivers/gpu/drm/i915/gt/intel_context.c
> +++ b/drivers/gpu/drm/i915/gt/intel_context.c
> @@ -475,6 +475,11 @@ void intel_context_enter_engine(struct intel_context *ce)
>  
>  void intel_context_exit_engine(struct intel_context *ce)
>  {
> +     if (unlikely(atomic_read(&ce->engine->wakeref.count) <= 0)) {
> +             intel_timeline_exit(ce->timeline);
Do you know if intel_timeline_exit() tampers with engine's
wakeref counter in any way? If not, you could rearrange the code
a bit to save a few lines:

{
        intel_timeline_exit(ce->timeline);
        if (likely(atomic_read(&ce->engine->wakeref.count) > 0)
                intel_engine_pm_put(ce->engine);
}
 
Otherwise, the code looks sane:

Reviewed-by: Krzysztof Karas <[email protected]>

-- 
Best Regards,
Krzysztof

Reply via email to