perf parse-events: Constify parse_events_add_numeric
authorIan Rogers <irogers@google.com>
Tue, 16 Apr 2024 06:15:24 +0000 (23:15 -0700)
committerArnaldo Carvalho de Melo <acme@redhat.com>
Sat, 27 Apr 2024 01:07:20 +0000 (22:07 -0300)
Allow the term list to be const so that other functions can pass const
term lists. Add const as necessary to called functions.

Signed-off-by: Ian Rogers <irogers@google.com>
Reviewed-by: Kan Liang <kan.liang@linux.intel.com>
Tested-by: Atish Patra <atishp@rivosinc.com>
Cc: Adrian Hunter <adrian.hunter@intel.com>
Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
Cc: Beeman Strong <beeman@rivosinc.com>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: James Clark <james.clark@arm.com>
Cc: Jiri Olsa <jolsa@kernel.org>
Cc: Mark Rutland <mark.rutland@arm.com>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Link: https://lore.kernel.org/r/20240416061533.921723-9-irogers@google.com
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
tools/perf/util/parse-events.c
tools/perf/util/parse-events.h

index 1440a3b4b674a5437b2787c1ada4e9ace491908d..1b408e3dccc7bc360a3b709c01bb871982367fef 100644 (file)
@@ -34,7 +34,8 @@
 #ifdef PARSER_DEBUG
 extern int parse_events_debug;
 #endif
-static int get_config_terms(struct parse_events_terms *head_config, struct list_head *head_terms);
+static int get_config_terms(const struct parse_events_terms *head_config,
+                           struct list_head *head_terms);
 static int parse_events_terms__copy(const struct parse_events_terms *src,
                                    struct parse_events_terms *dest);
 
@@ -154,7 +155,7 @@ const char *event_type(int type)
        return "unknown";
 }
 
-static char *get_config_str(struct parse_events_terms *head_terms,
+static char *get_config_str(const struct parse_events_terms *head_terms,
                            enum parse_events__term_type type_term)
 {
        struct parse_events_term *term;
@@ -169,12 +170,12 @@ static char *get_config_str(struct parse_events_terms *head_terms,
        return NULL;
 }
 
-static char *get_config_metric_id(struct parse_events_terms *head_terms)
+static char *get_config_metric_id(const struct parse_events_terms *head_terms)
 {
        return get_config_str(head_terms, PARSE_EVENTS__TERM_TYPE_METRIC_ID);
 }
 
-static char *get_config_name(struct parse_events_terms *head_terms)
+static char *get_config_name(const struct parse_events_terms *head_terms)
 {
        return get_config_str(head_terms, PARSE_EVENTS__TERM_TYPE_NAME);
 }
@@ -358,7 +359,7 @@ static int config_term_common(struct perf_event_attr *attr,
                              struct parse_events_term *term,
                              struct parse_events_error *err);
 static int config_attr(struct perf_event_attr *attr,
-                      struct parse_events_terms *head,
+                      const struct parse_events_terms *head,
                       struct parse_events_error *err,
                       config_term_func_t config_term);
 
@@ -1108,7 +1109,7 @@ static int config_term_tracepoint(struct perf_event_attr *attr,
 #endif
 
 static int config_attr(struct perf_event_attr *attr,
-                      struct parse_events_terms *head,
+                      const struct parse_events_terms *head,
                       struct parse_events_error *err,
                       config_term_func_t config_term)
 {
@@ -1121,7 +1122,8 @@ static int config_attr(struct perf_event_attr *attr,
        return 0;
 }
 
-static int get_config_terms(struct parse_events_terms *head_config, struct list_head *head_terms)
+static int get_config_terms(const struct parse_events_terms *head_config,
+                           struct list_head *head_terms)
 {
 #define ADD_CONFIG_TERM(__type, __weak)                                \
        struct evsel_config_term *__t;                  \
@@ -1325,7 +1327,7 @@ int parse_events_add_tracepoint(struct list_head *list, int *idx,
 static int __parse_events_add_numeric(struct parse_events_state *parse_state,
                                struct list_head *list,
                                struct perf_pmu *pmu, u32 type, u32 extended_type,
-                               u64 config, struct parse_events_terms *head_config)
+                               u64 config, const struct parse_events_terms *head_config)
 {
        struct perf_event_attr attr;
        LIST_HEAD(config_terms);
@@ -1361,7 +1363,7 @@ static int __parse_events_add_numeric(struct parse_events_state *parse_state,
 int parse_events_add_numeric(struct parse_events_state *parse_state,
                             struct list_head *list,
                             u32 type, u64 config,
-                            struct parse_events_terms *head_config,
+                            const struct parse_events_terms *head_config,
                             bool wildcard)
 {
        struct perf_pmu *pmu = NULL;
index db47913e54bc866d914dc69057d54d4c8aeaef56..5005782766e974a6ac47ffaa875ef51b5111868c 100644 (file)
@@ -196,7 +196,7 @@ int parse_events_add_tracepoint(struct list_head *list, int *idx,
 int parse_events_add_numeric(struct parse_events_state *parse_state,
                             struct list_head *list,
                             u32 type, u64 config,
-                            struct parse_events_terms *head_config,
+                            const struct parse_events_terms *head_config,
                             bool wildcard);
 int parse_events_add_tool(struct parse_events_state *parse_state,
                          struct list_head *list,