Skip to content

panfrost: Remove sync arguments from panfrost_batch_submit

Icecream95 requested to merge icecream95/mesa:neverfps into main

Untested because there's a thunderstorm at the moment, but similar patches are tested and known to work with GPU-bound Neverball on Sway.

Includes an unrelated cleanup commit that this one would have relied on (so that an output syncobj is only used for winsys purposes and glFinish), but then I realised that glFinish means that all batches must have a syncobj.


Whether a sync object is used cannot depend on where the batch is submitted from, remove the in_sync and out_sync fields from panfrost_batch_submit.

Always use an output syncobj, this is required for glFinish to work correctly. This could be skipped for batches which another batch depends on, but because of the existence of empty batches which emit no job, doing so is not trivial.

Never use an input syncobj. There appears to be no point to this, the kernel driver does implicit sync anyway.

Fixes "seconds per frame" rendering with Neverball.

Cc: mesa-stable

Merge request reports