v3dv: occlusion queries aren't handled with a CPU job

A CPU job of type V3DV_JOB_TYPE_CPU_RESET_QUERIES is only created for
performance and timestamp queries. Occlusion queries are handled with a
compute job. Therefore, there is no need to handle occlusion queries in
the CPU job.

Signed-off-by: Maíra Canal <mcanal@igalia.com>
Reviewed-by: Iago Toral Quiroga <itoral@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26448>
This commit is contained in:
Maíra Canal 2023-08-07 14:13:54 -03:00 committed by Marge Bot
parent 2a0d196abf
commit 2e32644e35

View file

@ -315,12 +315,11 @@ handle_reset_query_cpu_job(struct v3dv_queue *queue, struct v3dv_job *job,
struct v3dv_reset_query_cpu_job_info *info = &job->cpu.query_reset;
assert(info->pool);
assert(info->pool->query_type != VK_QUERY_TYPE_OCCLUSION);
/* We are about to reset query counters so we need to make sure that
* The GPU is not using them.
*/
if (info->pool->query_type == VK_QUERY_TYPE_OCCLUSION)
v3dv_bo_wait(job->device, info->pool->occlusion.bo, OS_TIMEOUT_INFINITE);
if (info->pool->query_type == VK_QUERY_TYPE_TIMESTAMP) {
VkResult result = queue_wait_idle(queue, sync_info);
if (result != VK_SUCCESS)