From: Miaoqian Lin linmq006@gmail.com
[ Upstream commit 0a6564ebd953c4590663c9a3c99a3ea9920ade6f ]
In perf_data__open_dir(), opendir() opens the directory stream. Add missing closedir() to release it after use.
Fixes: eb6176709b235b96 ("perf data: Add perf_data__open_dir_data function") Reviewed-by: Adrian Hunter adrian.hunter@intel.com Signed-off-by: Miaoqian Lin linmq006@gmail.com Cc: Alexander Shishkin alexander.shishkin@linux.intel.com Cc: Alexey Bayduraev alexey.v.bayduraev@linux.intel.com Cc: Ingo Molnar mingo@redhat.com Cc: Jiri Olsa jolsa@kernel.org Cc: Mark Rutland mark.rutland@arm.com Cc: Namhyung Kim namhyung@kernel.org Cc: Peter Zijlstra peterz@infradead.org Link: https://lore.kernel.org/r/20221229090903.1402395-1-linmq006@gmail.com Signed-off-by: Arnaldo Carvalho de Melo acme@redhat.com Signed-off-by: Sasha Levin sashal@kernel.org --- tools/perf/util/data.c | 2 ++ 1 file changed, 2 insertions(+)
diff --git a/tools/perf/util/data.c b/tools/perf/util/data.c index 3c874f52f1a2..4da900bdb2f1 100644 --- a/tools/perf/util/data.c +++ b/tools/perf/util/data.c @@ -120,6 +120,7 @@ int perf_data__open_dir(struct perf_data *data) file->size = st.st_size; }
+ closedir(dir); if (!files) return -EINVAL;
@@ -128,6 +129,7 @@ int perf_data__open_dir(struct perf_data *data) return 0;
out_err: + closedir(dir); close_dir(files, nr); return ret; }