pvr: fix pvr_CmdResetQueryPool barriers
It was not waiting for previous frag/geom to complete, overwriting their results midway. Subsequent frag/geom were not waiting for the reset-program to complete, so it was resetting the transform-feedback write-index and primitives_written counts midway or after the frag/geom complete. This resulted in incorrect XFB data and query-results. Signed-off-by: Iliyan Dinev <iliyan.dinev@imgtec.com> Acked-by: Erik Faye-Lund <erik.faye-lund@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36412>
This commit is contained in:
@@ -605,7 +605,7 @@ pvr_process_event_cmd_wait(struct pvr_device *device,
|
||||
uint32_t wait_count = 0;
|
||||
|
||||
for (uint32_t i = 0; i < sub_cmd->count; i++) {
|
||||
if (sub_cmd->wait_at_stage_masks[i] & stage) {
|
||||
if (sub_cmd->wait_at_stage_masks[i] & BITFIELD_BIT(stage)) {
|
||||
waits[wait_count++] = (struct vk_sync_wait){
|
||||
.sync = sub_cmd->events[i]->sync,
|
||||
.stage_mask = ~(VkPipelineStageFlags2)0,
|
||||
|
||||
Reference in New Issue
Block a user