diff --git a/src/intel/perf/intel_perf.c b/src/intel/perf/intel_perf.c index a3ae2556cbf..e1b482c9d04 100644 --- a/src/intel/perf/intel_perf.c +++ b/src/intel/perf/intel_perf.c @@ -985,12 +985,9 @@ intel_perf_get_counters_passes(struct intel_perf_config *perf, } } - if (pass_idx == UINT32_MAX) { + if (pass_idx == UINT32_MAX) pass_array[n_written_passes] = counter_pass[i].query; - pass_idx = n_written_passes++; - } - counter_pass[i].pass = pass_idx; assert(n_written_passes <= n_passes); } } diff --git a/src/intel/perf/intel_perf.h b/src/intel/perf/intel_perf.h index 207c2378121..6a9f8352b53 100644 --- a/src/intel/perf/intel_perf.h +++ b/src/intel/perf/intel_perf.h @@ -415,7 +415,6 @@ struct intel_perf_config { struct intel_perf_counter_pass { struct intel_perf_query_info *query; struct intel_perf_query_counter *counter; - uint32_t pass; }; /** Initialize the intel_perf_config object for a given device. diff --git a/src/intel/vulkan/anv_perf.c b/src/intel/vulkan/anv_perf.c index 49cbef52a07..3e970b2fb03 100644 --- a/src/intel/vulkan/anv_perf.c +++ b/src/intel/vulkan/anv_perf.c @@ -430,10 +430,12 @@ anv_perf_write_pass_results(struct intel_perf_config *perf, const struct intel_perf_query_result *accumulated_results, union VkPerformanceCounterResultKHR *results) { + const struct intel_perf_query_info *query = pool->pass_query[pass]; + for (uint32_t c = 0; c < pool->n_counters; c++) { const struct intel_perf_counter_pass *counter_pass = &pool->counter_pass[c]; - if (counter_pass->pass != pass) + if (counter_pass->query != query) continue; switch (pool->pass_query[pass]->kind) { diff --git a/src/intel/vulkan_hasvk/anv_perf.c b/src/intel/vulkan_hasvk/anv_perf.c index 3aac07fd72a..b0372ec35ae 100644 --- a/src/intel/vulkan_hasvk/anv_perf.c +++ b/src/intel/vulkan_hasvk/anv_perf.c @@ -440,10 +440,12 @@ anv_perf_write_pass_results(struct intel_perf_config *perf, const struct intel_perf_query_result *accumulated_results, union VkPerformanceCounterResultKHR *results) { + const struct intel_perf_query_info *query = pool->pass_query[pass]; + for (uint32_t c = 0; c < pool->n_counters; c++) { const struct intel_perf_counter_pass *counter_pass = &pool->counter_pass[c]; - if (counter_pass->pass != pass) + if (counter_pass->query != query) continue; switch (pool->pass_query[pass]->kind) {