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)
committerArnaldo Carvalho de Melo <acme@redhat.com>
Fri, 29 Jul 2022 16:39:51 +0000 (13:39 -0300)
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>
tools/perf/builtin-stat.c

index d2ecd4d..86f838c 100644 (file)
@@ -1686,12 +1686,6 @@ static int add_default_attributes(void)
   { .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            },
-};
 
 /*
  * Detailed stats (-d), covering the L1 and last level data caches:
@@ -1947,30 +1941,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;