pvr: Fixed creation of waits in queue submission
Waits were not previously being created for job dependencies in pvr_driver_queue_submit() because the pvr_stage_mask() was being called in place of pvr_stage_mask_dst(), and the former does not handle the top-of-pipe bit. Signed-off-by: Donald Robson <donald.robson@imgtec.com> Acked-by: Alyssa Rosenzweig <alyssa@rosenzweig.io> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31679>
This commit is contained in:
@@ -891,8 +891,10 @@ static VkResult pvr_process_queue_waits(struct pvr_queue *queue,
|
||||
uint32_t stage_wait_count = 0;
|
||||
|
||||
for (uint32_t wait_idx = 0; wait_idx < wait_count; wait_idx++) {
|
||||
if (!(pvr_stage_mask(waits[wait_idx].stage_mask) & BITFIELD_BIT(i)))
|
||||
if (!(pvr_stage_mask_dst(waits[wait_idx].stage_mask) &
|
||||
BITFIELD_BIT(i))) {
|
||||
continue;
|
||||
}
|
||||
|
||||
stage_waits[stage_wait_count++] = (struct vk_sync_wait){
|
||||
.sync = waits[wait_idx].sync,
|
||||
|
||||
Reference in New Issue
Block a user