]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
perf top: Use evlist__new_default when no events specified
authorIan Rogers <irogers@google.com>
Sun, 5 Oct 2025 18:24:21 +0000 (11:24 -0700)
committerNamhyung Kim <namhyung@kernel.org>
Wed, 15 Oct 2025 14:59:11 +0000 (23:59 +0900)
Rather than distributing the code doing similar things to
evlist__new_default, use the one implementation so that paranoia and
wildcard scanning can be optimized.

Signed-off-by: Ian Rogers <irogers@google.com>
Tested-by: James Clark <james.clark@linaro.org>
Signed-off-by: Namhyung Kim <namhyung@kernel.org>
tools/perf/builtin-top.c

index a11f629c7d76a24cc22e90d397ef006170c64ff6..710604c4f6f6cbe82714c84f461072acb0901b7e 100644 (file)
@@ -1695,11 +1695,13 @@ int cmd_top(int argc, const char **argv)
                goto out_delete_evlist;
 
        if (!top.evlist->core.nr_entries) {
-               bool can_profile_kernel = perf_event_paranoid_check(1);
-               int err = parse_event(top.evlist, can_profile_kernel ? "cycles:P" : "cycles:Pu");
+               struct evlist *def_evlist = evlist__new_default();
 
-               if (err)
+               if (!def_evlist)
                        goto out_delete_evlist;
+
+               evlist__splice_list_tail(top.evlist, &def_evlist->core.entries);
+               evlist__delete(def_evlist);
        }
 
        status = evswitch__init(&top.evswitch, top.evlist, stderr);