v3dv: serialize jobs after any barrier when debug sync is set

This will ensure we always generate a new job after a barrier and
that the new job is setup to be serialized against all previous jobs.

Reviewed-by: Juan A. Suarez <jasuarez@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33350>
This commit is contained in:
Iago Toral Quiroga 2025-02-03 11:22:49 +01:00 committed by Marge Bot
parent 8d9f5dfd1d
commit 5572e274e2

View file

@ -3407,6 +3407,15 @@ v3dv_cmd_buffer_emit_pipeline_barrier(struct v3dv_cmd_buffer *cmd_buffer,
true, true, &state);
}
if (unlikely(V3D_DBG(SYNC))) {
state.src_mask_compute = V3DV_BARRIER_ALL;
state.src_mask_graphics = V3DV_BARRIER_ALL;
state.src_mask_transfer = V3DV_BARRIER_ALL;
state.dst_mask = V3DV_BARRIER_ALL;
state.bcl_image_access = ~0;
state.bcl_buffer_access = ~0;
}
/* Bail if we don't relevant barriers */
if (!state.dst_mask)
return;