perf evlist: Move destruction of maps to evlist destructor
[deliverable/linux.git] / tools / perf / builtin-kvm.c
index f8bf5f244d77dded7e19fff4bf2101d859265a6c..858b11bf6711b7970b89a8475d2002086502d85e 100644 (file)
@@ -13,7 +13,7 @@
 #include "util/parse-options.h"
 #include "util/trace-event.h"
 #include "util/debug.h"
-#include <lk/debugfs.h>
+#include <api/fs/debugfs.h>
 #include "util/tool.h"
 #include "util/stat.h"
 #include "util/top.h"
@@ -89,7 +89,7 @@ struct exit_reasons_table {
 
 struct perf_kvm_stat {
        struct perf_tool    tool;
-       struct perf_record_opts opts;
+       struct record_opts  opts;
        struct perf_evlist  *evlist;
        struct perf_session *session;
 
@@ -1158,9 +1158,7 @@ out:
        if (kvm->timerfd >= 0)
                close(kvm->timerfd);
 
-       if (pollfds)
-               free(pollfds);
-
+       free(pollfds);
        return err;
 }
 
@@ -1232,7 +1230,7 @@ static int read_events(struct perf_kvm_stat *kvm)
                .ordered_samples        = true,
        };
        struct perf_data_file file = {
-               .path = input_name,
+               .path = kvm->file_name,
                .mode = PERF_DATA_MODE_READ,
        };
 
@@ -1558,10 +1556,8 @@ out:
        if (kvm->session)
                perf_session__delete(kvm->session);
        kvm->session = NULL;
-       if (kvm->evlist) {
-               perf_evlist__delete_maps(kvm->evlist);
+       if (kvm->evlist)
                perf_evlist__delete(kvm->evlist);
-       }
 
        return err;
 }
@@ -1690,6 +1686,8 @@ int cmd_kvm(int argc, const char **argv, const char *prefix __maybe_unused)
                           "file", "file saving guest os /proc/kallsyms"),
                OPT_STRING(0, "guestmodules", &symbol_conf.default_guest_modules,
                           "file", "file saving guest os /proc/modules"),
+               OPT_INCR('v', "verbose", &verbose,
+                           "be more verbose (show counter open errors, etc)"),
                OPT_END()
        };
 
@@ -1711,12 +1709,7 @@ int cmd_kvm(int argc, const char **argv, const char *prefix __maybe_unused)
                perf_guest = 1;
 
        if (!file_name) {
-               if (perf_host && !perf_guest)
-                       file_name = strdup("perf.data.host");
-               else if (!perf_host && perf_guest)
-                       file_name = strdup("perf.data.guest");
-               else
-                       file_name = strdup("perf.data.kvm");
+               file_name = get_filename_for_perf_kvm();
 
                if (!file_name) {
                        pr_err("Failed to allocate memory for filename\n");
This page took 0.044365 seconds and 5 git commands to generate.