]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
perf stat: Revert "perf stat: Add default hybrid events"
authorKan Liang <kan.liang@linux.intel.com>
Thu, 21 Jul 2022 06:57:02 +0000 (14:57 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 17 Aug 2022 12:42:12 +0000 (14:42 +0200)
[ Upstream commit ace3e31e653e79cae9b047e85f567e6b44c98532 ]

This reverts commit Fixes: ac2dc29edd21f9ec ("perf stat: Add default
hybrid events")

Between this patch and the reverted patch, the commit 6c1912898ed21bef
("perf parse-events: Rename parse_events_error functions") and the
commit 07eafd4e053a41d7 ("perf parse-event: Add init and exit to
parse_event_error") clean up the parse_events_error_*() codes. The
related change is also reverted.

The reverted patch is hard to be extended to support new default events,
e.g., Topdown events, and the existing "--detailed" option on a hybrid
platform.

A new solution will be proposed in the following patch to enable the
perf stat default on a hybrid platform.

Signed-off-by: Kan Liang <kan.liang@linux.intel.com>
Acked-by: Ian Rogers <irogers@google.com>
Acked-by: Namhyung Kim <namhyung@kernel.org>
Cc: Alexander Shishkin <alexander.shishkin@intel.com>
Cc: Andi Kleen <ak@linux.intel.com>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: Jiri Olsa <jolsa@kernel.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Link: https://lore.kernel.org/r/20220721065706.2886112-2-zhengjun.xing@linux.intel.com
Signed-off-by: Xing Zhengjun <zhengjun.xing@linux.intel.com>
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
tools/perf/builtin-stat.c

index f058e8cddfa85a8c1b550e2655e6c54b22682b65..e15fd6f9f7ea224c561124422537c32ed3810c40 100644 (file)
@@ -1663,12 +1663,6 @@ static int add_default_attributes(void)
   { .type = PERF_TYPE_HARDWARE, .config = PERF_COUNT_HW_BRANCH_INSTRUCTIONS    },
   { .type = PERF_TYPE_HARDWARE, .config = PERF_COUNT_HW_BRANCH_MISSES          },
 
-};
-       struct perf_event_attr default_sw_attrs[] = {
-  { .type = PERF_TYPE_SOFTWARE, .config = PERF_COUNT_SW_TASK_CLOCK             },
-  { .type = PERF_TYPE_SOFTWARE, .config = PERF_COUNT_SW_CONTEXT_SWITCHES       },
-  { .type = PERF_TYPE_SOFTWARE, .config = PERF_COUNT_SW_CPU_MIGRATIONS         },
-  { .type = PERF_TYPE_SOFTWARE, .config = PERF_COUNT_SW_PAGE_FAULTS            },
 };
 
 /*
@@ -1910,30 +1904,6 @@ setup_metrics:
        }
 
        if (!evsel_list->core.nr_entries) {
-               if (perf_pmu__has_hybrid()) {
-                       struct parse_events_error errinfo;
-                       const char *hybrid_str = "cycles,instructions,branches,branch-misses";
-
-                       if (target__has_cpu(&target))
-                               default_sw_attrs[0].config = PERF_COUNT_SW_CPU_CLOCK;
-
-                       if (evlist__add_default_attrs(evsel_list,
-                                                     default_sw_attrs) < 0) {
-                               return -1;
-                       }
-
-                       parse_events_error__init(&errinfo);
-                       err = parse_events(evsel_list, hybrid_str, &errinfo);
-                       if (err) {
-                               fprintf(stderr,
-                                       "Cannot set up hybrid events %s: %d\n",
-                                       hybrid_str, err);
-                               parse_events_error__print(&errinfo, hybrid_str);
-                       }
-                       parse_events_error__exit(&errinfo);
-                       return err ? -1 : 0;
-               }
-
                if (target__has_cpu(&target))
                        default_attrs0[0].config = PERF_COUNT_SW_CPU_CLOCK;