|
@@ -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,
|