On 24.10.2020 18:43, Jiri Olsa wrote: > On Wed, Oct 21, 2020 at 06:57:53PM +0300, Alexey Budankov wrote: >> >> Open files located at trace data directory in case read access >> mode is requested. File are opened and its fds assigned to >> perf_data dir files especially for loading data directories >> content in perf report mode. >> >> Signed-off-by: Alexey Budankov <alexey.budan...@linux.intel.com> >> --- >> tools/perf/util/data.c | 4 ++++ >> 1 file changed, 4 insertions(+) >> >> diff --git a/tools/perf/util/data.c b/tools/perf/util/data.c >> index c47aa34fdc0a..6ad61ac6ba67 100644 >> --- a/tools/perf/util/data.c >> +++ b/tools/perf/util/data.c >> @@ -321,6 +321,10 @@ static int open_dir(struct perf_data *data) >> return -1; >> >> ret = open_file(data); >> + if (!ret && perf_data__is_dir(data)) { >> + if (perf_data__is_read(data)) >> + ret = perf_data__open_dir(data); >> + } > > perf_data__open_dir is also called from perf_session__new > is it called twice?
It is not called twice. It is in different branches. This one is for write and the other one is for read. Alexei > > jirka > >> >> /* Cleanup whatever we managed to create so far. */ >> if (ret && perf_data__is_write(data)) >> -- >> 2.24.1 >> >