Messages in this thread | | | Date | Tue, 22 Feb 2022 23:06:02 +0100 | From | Jiri Olsa <> | Subject | Re: [PATCH core v2] perf data: Adding error message if perf_data__create_dir fails |
| |
On Tue, Feb 22, 2022 at 12:14:17PM +0300, Alexey Bayduraev wrote: > Adding proper return codes for all cases of data directory creation > failure and adding error message output based on these codes. > > Signed-off-by: Alexey Bayduraev <alexey.v.bayduraev@linux.intel.com>
Acked-by: Jiri Olsa <jolsa@kernel.org>
thanks, jirka
> --- > tools/perf/builtin-record.c | 4 +++- > tools/perf/util/data.c | 8 ++++++-- > 2 files changed, 9 insertions(+), 3 deletions(-) > > diff --git a/tools/perf/builtin-record.c b/tools/perf/builtin-record.c > index 0bc6529814b2..0b4abed555d8 100644 > --- a/tools/perf/builtin-record.c > +++ b/tools/perf/builtin-record.c > @@ -1186,8 +1186,10 @@ static int record__mmap_evlist(struct record *rec, > > if (record__threads_enabled(rec)) { > ret = perf_data__create_dir(&rec->data, evlist->core.nr_mmaps); > - if (ret) > + if (ret) { > + pr_err("Failed to create data directory: %s\n", strerror(-ret)); > return ret; > + } > for (i = 0; i < evlist->core.nr_mmaps; i++) { > if (evlist->mmap) > evlist->mmap[i].file = &rec->data.dir.files[i]; > diff --git a/tools/perf/util/data.c b/tools/perf/util/data.c > index f5d260b1df4d..dc5d82ea1c30 100644 > --- a/tools/perf/util/data.c > +++ b/tools/perf/util/data.c > @@ -52,12 +52,16 @@ int perf_data__create_dir(struct perf_data *data, int nr) > struct perf_data_file *file = &files[i]; > > ret = asprintf(&file->path, "%s/data.%d", data->path, i); > - if (ret < 0) > + if (ret < 0) { > + ret = -ENOMEM; > goto out_err; > + } > > ret = open(file->path, O_RDWR|O_CREAT|O_TRUNC, S_IRUSR|S_IWUSR); > - if (ret < 0) > + if (ret < 0) { > + ret = -errno; > goto out_err; > + } > > file->fd = ret; > } > -- > 2.19.0 >
| |