summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLionel Landwerlin <lionel.g.landwerlin@intel.com>2020-09-03 12:19:11 +0300
committerLionel Landwerlin <lionel.g.landwerlin@intel.com>2021-01-15 13:26:23 +0200
commitb7032d67764304b949adc1867a0e17de576d2373 (patch)
treed4a0ffd36a7b123b7e436f7b988feffeaf509ded
parente79f112e4fd388836938cc07b4501d41fb13b4f2 (diff)
intel/perf: link queries back to the gen_perf_config object
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> Reviewed-by: Marcin Ĺšlusarz <marcin.slusarz@intel.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8525>
-rw-r--r--src/intel/perf/gen_perf.h2
-rw-r--r--src/intel/perf/gen_perf.py1
-rw-r--r--src/intel/perf/gen_perf_private.h2
3 files changed, 5 insertions, 0 deletions
diff --git a/src/intel/perf/gen_perf.h b/src/intel/perf/gen_perf.h
index 30a57dc483f..c91f9eeb55c 100644
--- a/src/intel/perf/gen_perf.h
+++ b/src/intel/perf/gen_perf.h
@@ -201,6 +201,8 @@ struct gen_perf_registers {
};
struct gen_perf_query_info {
+ struct gen_perf_config *perf;
+
enum gen_perf_query_type {
GEN_PERF_QUERY_TYPE_OA,
GEN_PERF_QUERY_TYPE_RAW,
diff --git a/src/intel/perf/gen_perf.py b/src/intel/perf/gen_perf.py
index 0d0aae90b5f..94fd6f619f4 100644
--- a/src/intel/perf/gen_perf.py
+++ b/src/intel/perf/gen_perf.py
@@ -681,6 +681,7 @@ def main():
c("struct gen_perf_query_info *query = rzalloc(perf, struct gen_perf_query_info);\n")
c("\n")
+ c("query->perf = perf;\n")
c("query->kind = GEN_PERF_QUERY_TYPE_OA;\n")
c("query->name = \"" + set.name + "\";\n")
c("query->symbol_name = \"" + set.symbol_name + "\";\n")
diff --git a/src/intel/perf/gen_perf_private.h b/src/intel/perf/gen_perf_private.h
index e3e877dd89e..acca9a2b48a 100644
--- a/src/intel/perf/gen_perf_private.h
+++ b/src/intel/perf/gen_perf_private.h
@@ -76,6 +76,8 @@ gen_perf_append_query_info(struct gen_perf_config *perf, int max_counters)
query = &perf->queries[perf->n_queries - 1];
memset(query, 0, sizeof(*query));
+ query->perf = perf;
+
if (max_counters > 0) {
query->max_counters = max_counters;
query->counters =