summaryrefslogtreecommitdiffstats
path: root/tools/perf/builtin-report.c
diff options
context:
space:
mode:
authorBenjamin Herrenschmidt <benh@kernel.crashing.org>2009-08-27 13:12:40 +1000
committerBenjamin Herrenschmidt <benh@kernel.crashing.org>2009-08-27 13:12:40 +1000
commitf480fe3916de2e2cbb6e384cb685f0f1d8272188 (patch)
tree141c60a2a263f1c01907e692d4aef1e6b699d8c7 /tools/perf/builtin-report.c
parent4f0dbc2781b9dc457159b676289f874ab2dc3560 (diff)
parentf415c413f458837bd0c27086b79aca889f9435e4 (diff)
downloadlinux-f480fe3916de2e2cbb6e384cb685f0f1d8272188.tar.gz
linux-f480fe3916de2e2cbb6e384cb685f0f1d8272188.tar.bz2
linux-f480fe3916de2e2cbb6e384cb685f0f1d8272188.zip
Merge commit 'origin/master' into next
Diffstat (limited to 'tools/perf/builtin-report.c')
-rw-r--r--tools/perf/builtin-report.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/tools/perf/builtin-report.c b/tools/perf/builtin-report.c
index b53a60fc12de..8b2ec882e6e0 100644
--- a/tools/perf/builtin-report.c
+++ b/tools/perf/builtin-report.c
@@ -38,6 +38,7 @@ static char *dso_list_str, *comm_list_str, *sym_list_str,
static struct strlist *dso_list, *comm_list, *sym_list;
static char *field_sep;
+static int force;
static int input;
static int show_mask = SHOW_KERNEL | SHOW_USER | SHOW_HV;
@@ -1856,6 +1857,11 @@ static int __cmd_report(void)
exit(-1);
}
+ if (!force && (stat.st_uid != geteuid())) {
+ fprintf(stderr, "file: %s not owned by current user\n", input_name);
+ exit(-1);
+ }
+
if (!stat.st_size) {
fprintf(stderr, "zero-sized file, nothing to do!\n");
exit(0);
@@ -2064,6 +2070,7 @@ static const struct option options[] = {
OPT_BOOLEAN('D', "dump-raw-trace", &dump_trace,
"dump raw trace in ASCII"),
OPT_STRING('k', "vmlinux", &vmlinux, "file", "vmlinux pathname"),
+ OPT_BOOLEAN('f', "force", &force, "don't complain, do it"),
OPT_BOOLEAN('m', "modules", &modules,
"load module symbols - WARNING: use only with -k and LIVE kernel"),
OPT_BOOLEAN('n', "show-nr-samples", &show_nr_samples,