diff options
author | Rafael J. Wysocki <rjw@sisk.pl> | 2009-08-10 23:40:50 +0200 |
---|---|---|
committer | Rafael J. Wysocki <rjw@sisk.pl> | 2009-08-10 23:40:50 +0200 |
commit | dcbf77cac640af0ab944d5cbb07934bf6708b4d9 (patch) | |
tree | e2f4d1b3a1089ee10436cb19740a9cb99f2dc527 /tools/perf/builtin-record.c | |
parent | c00aafcd4977769e8728292302ddbbb8b1082fab (diff) | |
parent | 85dfd81dc57e8183a277ddd7a56aa65c96f3f487 (diff) | |
download | linux-dcbf77cac640af0ab944d5cbb07934bf6708b4d9.tar.bz2 |
Merge branch 'master' into for-linus
Diffstat (limited to 'tools/perf/builtin-record.c')
-rw-r--r-- | tools/perf/builtin-record.c | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/tools/perf/builtin-record.c b/tools/perf/builtin-record.c index 6da09928130f..0345aad8eba5 100644 --- a/tools/perf/builtin-record.c +++ b/tools/perf/builtin-record.c @@ -412,6 +412,7 @@ static void create_counter(int counter, int cpu, pid_t pid) if (call_graph) attr->sample_type |= PERF_SAMPLE_CALLCHAIN; + attr->mmap = track; attr->comm = track; attr->inherit = (cpu < 0) && inherit; @@ -524,10 +525,14 @@ static int __cmd_record(int argc, const char **argv) signal(SIGCHLD, sig_handler); signal(SIGINT, sig_handler); - if (!stat(output_name, &st) && !force && !append_file) { - fprintf(stderr, "Error, output file %s exists, use -A to append or -f to overwrite.\n", - output_name); - exit(-1); + if (!stat(output_name, &st) && st.st_size) { + if (!force && !append_file) { + fprintf(stderr, "Error, output file %s exists, use -A to append or -f to overwrite.\n", + output_name); + exit(-1); + } + } else { + append_file = 0; } flags = O_CREAT|O_RDWR; |