[PATCH 2/3] perf tools: Open perf.data with O_CLOEXEC flag

From: Jiri Olsa
Date: Fri Sep 08 2017 - 04:46:37 EST


Do not carry the perf.data file descriptor into
the workload process and close it when perf
executes the workload.

Link: http://lkml.kernel.org/n/tip-j7qdp4ucreain1cqvy485wd4@xxxxxxxxxxxxxx
Signed-off-by: Jiri Olsa <jolsa@xxxxxxxxxx>
---
tools/perf/util/data.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/tools/perf/util/data.c b/tools/perf/util/data.c
index e84bbc8ec058..6b9d3ec2c276 100644
--- a/tools/perf/util/data.c
+++ b/tools/perf/util/data.c
@@ -96,7 +96,8 @@ static int open_file_write(struct perf_data_file *file)
if (check_backup(file))
return -1;

- fd = open(file->path, O_CREAT|O_RDWR|O_TRUNC, S_IRUSR|S_IWUSR);
+ fd = open(file->path, O_CREAT|O_RDWR|O_TRUNC|O_CLOEXEC,
+ S_IRUSR|S_IWUSR);

if (fd < 0)
pr_err("failed to open %s : %s\n", file->path,
--
2.9.5