<snip>
@@ -870,7 +895,8 @@ static void execlists_submission_tasklet(unsigned long data) GEM_BUG_ON(status & GEN8_CTX_STATUS_IDLE_ACTIVE);if (status & GEN8_CTX_STATUS_COMPLETE &&- buf[2*head + 1] == PREEMPT_ID) { + HAS_LOGICAL_RING_PREEMPTION(dev_priv) && + buf[2*head + 1] == upper_32_bits(preempt_ce->lrc_desc)) {buf[2*head + 1] == execlists->preempt_status_complete No need for HAS_LOGICAL_RING_PREEMPTION as you can then set to an impossible value. If you want to send that as a bug fix patch first... -Chris
Unless I'm missing something this isn't a bug pre-gen11 since we always allocate the preempt context and thus we can't erroneously match PREEMPT_ID. lrc_desc is only created after pinning, so to use that the extra check was required. I'll add execlists->preempt_status_complete (and the other change for the commit_reg) to this patch.
Daniele _______________________________________________ Intel-gfx mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/intel-gfx
