|
@@ -497,7 +497,7 @@ static int __cmd_report(struct perf_report *rep)
|
|
|
ret = perf_session__cpu_bitmap(session, rep->cpu_list,
|
|
|
rep->cpu_bitmap);
|
|
|
if (ret)
|
|
|
- goto out_delete;
|
|
|
+ return ret;
|
|
|
}
|
|
|
|
|
|
if (use_browser <= 0)
|
|
@@ -508,11 +508,11 @@ static int __cmd_report(struct perf_report *rep)
|
|
|
|
|
|
ret = perf_report__setup_sample_type(rep);
|
|
|
if (ret)
|
|
|
- goto out_delete;
|
|
|
+ return ret;
|
|
|
|
|
|
ret = perf_session__process_events(session, &rep->tool);
|
|
|
if (ret)
|
|
|
- goto out_delete;
|
|
|
+ return ret;
|
|
|
|
|
|
kernel_map = session->machines.host.vmlinux_maps[MAP__FUNCTION];
|
|
|
kernel_kmap = map__kmap(kernel_map);
|
|
@@ -547,7 +547,7 @@ static int __cmd_report(struct perf_report *rep)
|
|
|
|
|
|
if (dump_trace) {
|
|
|
perf_session__fprintf_nr_events(session, stdout);
|
|
|
- goto out_delete;
|
|
|
+ return 0;
|
|
|
}
|
|
|
|
|
|
nr_samples = 0;
|
|
@@ -572,7 +572,7 @@ static int __cmd_report(struct perf_report *rep)
|
|
|
|
|
|
if (nr_samples == 0) {
|
|
|
ui__error("The %s file has no samples!\n", session->filename);
|
|
|
- goto out_delete;
|
|
|
+ return 0;
|
|
|
}
|
|
|
|
|
|
list_for_each_entry(pos, &session->evlist->entries, node)
|
|
@@ -598,19 +598,6 @@ static int __cmd_report(struct perf_report *rep)
|
|
|
} else
|
|
|
perf_evlist__tty_browse_hists(session->evlist, rep, help);
|
|
|
|
|
|
-out_delete:
|
|
|
- /*
|
|
|
- * Speed up the exit process, for large files this can
|
|
|
- * take quite a while.
|
|
|
- *
|
|
|
- * XXX Enable this when using valgrind or if we ever
|
|
|
- * librarize this command.
|
|
|
- *
|
|
|
- * Also experiment with obstacks to see how much speed
|
|
|
- * up we'll get here.
|
|
|
- *
|
|
|
- * perf_session__delete(session);
|
|
|
- */
|
|
|
return ret;
|
|
|
}
|
|
|
|