<html>
    <head>
      <base href="https://bugs.freedesktop.org/">
    </head>
    <body>
      <p>
        <div>
            <b><a class="bz_bug_link 
          bz_status_NEW "
   title="NEW - [CI][SHARDS] igt@gem_exec_nop@basic-parallel - incomplete - GEM_BUG_ON(!engine->i915->gt.awake)"
   href="https://bugs.freedesktop.org/show_bug.cgi?id=107274#c2">Comment # 2</a>
              on <a class="bz_bug_link 
          bz_status_NEW "
   title="NEW - [CI][SHARDS] igt@gem_exec_nop@basic-parallel - incomplete - GEM_BUG_ON(!engine->i915->gt.awake)"
   href="https://bugs.freedesktop.org/show_bug.cgi?id=107274">bug 107274</a>
              from <span class="vcard"><a class="email" href="mailto:chris@chris-wilson.co.uk" title="Chris Wilson <chris@chris-wilson.co.uk>"> <span class="fn">Chris Wilson</span></a>
</span></b>
        <pre>It shouldn't be possible... It requires us to set gt.awake=false while the
tasklet is running, but before we do we park the engines and flush the tasklets
in the process. We must have kicked off another tasklet_schedule after
intel_engines_park.

I think...
diff --git a/drivers/gpu/drm/i915/intel_lrc.c
b/drivers/gpu/drm/i915/intel_lrc.c
index db5351e6a3a5..6921406a7250 100644
--- a/drivers/gpu/drm/i915/intel_lrc.c
+++ b/drivers/gpu/drm/i915/intel_lrc.c
@@ -1074,7 +1074,7 @@ static void execlists_submission_tasklet(unsigned long
data)

        spin_lock_irqsave(&engine->timeline.lock, flags);

-       if (engine->i915->gt.awake) /* we may be delayed until after we idle!
*/
+       if (engine->execlists.active) /* we may be delayed until after idle! */
                __execlists_submission_tasklet(engine);

        spin_unlock_irqrestore(&engine->timeline.lock, flags);</pre>
        </div>
      </p>


      <hr>
      <span>You are receiving this mail because:</span>

      <ul>
          <li>You are the assignee for the bug.</li>
          <li>You are the QA Contact for the bug.</li>
          <li>You are on the CC list for the bug.</li>
      </ul>
    </body>
</html>