Hi Chris, > /* Mark the end of active before we overwrite *active */ > - WRITE_ONCE(execlists->active, execlists->pending); > - > - for (port = execlists->active; (rq = *port); port++) > - execlists_schedule_out(rq); > - execlists->active = > - memset(execlists->inflight, 0, sizeof(execlists->inflight)); > + for (port = xchg(&execlists->active, execlists->pending); *port; port++) > + execlists_schedule_out(*port); > + WRITE_ONCE(execlists->active, > + memset(execlists->inflight, 0, sizeof(execlists->inflight))); Reviewed-by: Andi Shyti <andi.shyti@xxxxxxxxx> Andi _______________________________________________ Intel-gfx mailing list Intel-gfx@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/intel-gfx