v3d: Don't forget to wait for our TFU job before rendering from it.

Otherwise we may race to read old contents.  This didn't show up in the
CTS and piglit for me, but it did once I started using the TFU to do
linear->UIF blits for X11.

Fixes: 2ebca177dc ("v3d: Use the TFU to do generatemipmap.")
This commit is contained in:
Eric Anholt 2018-12-14 09:43:15 -08:00
parent 153d3fc5f9
commit e731d53716
1 changed files with 8 additions and 0 deletions

View File

@ -385,7 +385,15 @@ v3d_job_submit(struct v3d_context *v3d, struct v3d_job *job)
v3d33_bcl_epilogue(v3d, job);
}
/* While the RCL will implicitly depend on the last RCL to have
* finished, we also need to block on any previous TFU job we may have
* dispatched.
*/
job->submit.in_sync_rcl = v3d->out_sync;
/* Update the sync object for the last rendering by our context. */
job->submit.out_sync = v3d->out_sync;
job->submit.bcl_end = job->bcl.bo->offset + cl_offset(&job->bcl);
job->submit.rcl_end = job->rcl.bo->offset + cl_offset(&job->rcl);