Newer
Older

Arnaldo Carvalho de Melo
committed
if (offset + head < stat.st_size)
goto more;
rc = EXIT_SUCCESS;
done:
close(input);
fprintf(stderr, " IP events: %10ld\n", total);
fprintf(stderr, " mmap events: %10ld\n", total_mmap);
fprintf(stderr, " comm events: %10ld\n", total_comm);
fprintf(stderr, " unknown events: %10ld\n", total_unknown);
if (verbose >= 2) {
dsos__fprintf(stdout);
threads__fprintf(stdout);
}
threads__sort_symhists();
threads__symhists_fprintf(total, stdout);

Arnaldo Carvalho de Melo
committed
return rc;
}
static const char * const report_usage[] = {
"perf report [<options>] <command>",
NULL
};
static const struct option options[] = {
OPT_STRING('i', "input", &input_name, "file",
"input file name"),
OPT_BOOLEAN('v', "verbose", &verbose,
"be more verbose (show symbol address, etc)"),
OPT_BOOLEAN('D', "dump-raw-trace", &dump_trace,
"dump raw trace in ASCII"),
OPT_END()
};
int cmd_report(int argc, const char **argv, const char *prefix)
{
elf_version(EV_CURRENT);
page_size = getpagesize();
parse_options(argc, argv, options, report_usage, 0);