1
linux/tools/perf/util
Yann Droneaud 57480d2cd9 perf tools: Enable close-on-exec flag on perf file descriptor
In commit a21b0b354d ('perf: Introduce a flag to enable
close-on-exec in perf_event_open()'), flag PERF_FLAG_FD_CLOEXEC
was added to perf_event_open(2) syscall to allows userspace
to atomically enable close-on-exec behavor when creating
the file descriptor.

This patch makes perf tools use the new flag if supported
by the kernel, so that the event file descriptors got
automatically closed if perf tool exec a sub-command.

Signed-off-by: Yann Droneaud <ydroneaud@opteya.com>
Cc: Andi Kleen <ak@linux.intel.com>
Cc: Arnaldo Carvalho de Melo <acme@ghostprotocols.net>
Cc: Ingo Molnar <mingo@kernel.org>
Cc: Jiri Olsa <jolsa@redhat.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Link: http://lkml.kernel.org/n/1404160127-7475-1-git-send-email-ydroneaud@opteya.com
Signed-off-by: Jiri Olsa <jolsa@kernel.org>
2014-07-18 09:09:34 +02:00
..
include perf tools: Move pr_* debug macros into debug object 2014-07-17 12:58:39 -03:00
scripting-engines perf tools: Move pr_* debug macros into debug object 2014-07-17 12:58:39 -03:00
abspath.c
alias.c perf tools: Introduce zfree 2013-12-27 15:17:00 -03:00
annotate.c perf annotate: Print the evsel name in the stdio output 2014-03-18 18:17:03 -03:00
annotate.h tools: Consolidate types.h 2014-05-01 21:22:39 +02:00
bitmap.c
build-id.c perf tools: Use tid for finding thread 2014-05-12 11:09:50 +02:00
build-id.h tools: Consolidate types.h 2014-05-01 21:22:39 +02:00
cache.h tools/perf: Turn strlcpy() into a __weak function 2013-10-09 08:48:49 +02:00
callchain.c perf callchain: Fix appending a callchain from a previous sample 2014-07-16 17:57:35 -03:00
callchain.h perf tools powerpc: Adjust callchain based on DWARF debug info 2014-06-27 11:14:51 +02:00
cgroup.c perf evlist: Introduce evlist__for_each() & friends 2014-01-13 10:06:25 -03:00
cgroup.h
cloexec.c perf tools: Enable close-on-exec flag on perf file descriptor 2014-07-18 09:09:34 +02:00
cloexec.h perf tools: Enable close-on-exec flag on perf file descriptor 2014-07-18 09:09:34 +02:00
color.c perf diff: Color the Ratio column 2014-01-13 11:37:17 -03:00
color.h perf diff: Color the Ratio column 2014-01-13 11:37:17 -03:00
comm.c perf tools: Do proper comm override error handling 2014-01-16 16:44:39 -03:00
comm.h perf tools: Do proper comm override error handling 2014-01-16 16:44:39 -03:00
config.c perf hists browser: Add ui.show-headers config file option 2014-07-07 15:23:31 -03:00
cpumap.c perf tools: Use cpu/possible instead of cpu/kernel_max 2014-04-22 17:39:16 +02:00
cpumap.h perf tools: Allow ability to map cpus to nodes easily 2014-04-22 17:39:12 +02:00
ctype.c
data.c perf tools: Move pr_* debug macros into debug object 2014-07-17 12:58:39 -03:00
data.h perf tools: Add perf_data_file__write interface 2013-12-02 09:22:46 -03:00
debug.c perf tools: Add --debug optionto set debug variable 2014-07-17 12:58:59 -03:00
debug.h perf tools: Add --debug optionto set debug variable 2014-07-17 12:58:59 -03:00
dso.c perf symbols: Record whether a dso is 64-bit 2014-07-16 17:57:35 -03:00
dso.h perf symbols: Record whether a dso is 64-bit 2014-07-16 17:57:35 -03:00
dwarf-aux.c perf probe: Fix perf probe to find correct variable DIE 2014-06-04 14:49:20 +02:00
dwarf-aux.h perf probe: Fix to find line information for probe list 2013-10-04 15:16:05 -03:00
environment.c
event.c perf tools: Fix missing kernel map load 2014-07-16 17:57:34 -03:00
event.h perf tools: Cache register accesses for unwind processing 2014-06-12 16:53:19 +02:00
evlist.c perf evlist: Pass mmap parameters in a struct 2014-07-16 17:57:36 -03:00
evlist.h perf evlist: Introduce evlist__for_each() & friends 2014-01-13 10:06:25 -03:00
evsel.c perf tools: Enable close-on-exec flag on perf file descriptor 2014-07-18 09:09:34 +02:00
evsel.h perf evsel: Add 'immediate' option 2014-07-16 17:57:37 -03:00
exec_cmd.c
exec_cmd.h
generate-cmdlist.sh tools/perf: Standardize feature support define names to: HAVE_{FEATURE}_SUPPORT 2013-10-09 08:48:28 +02:00
header.c perf tools: Ensure sscanf does not overrun the "mem" field 2014-01-20 16:19:08 -03:00
header.h tools: Consolidate types.h 2014-05-01 21:22:39 +02:00
help.c perf tools: Use zfree to help detect use after free bugs 2013-12-27 17:08:19 -03:00
help.h
hist.c perf tools: Add dcacheline sort 2014-06-09 13:34:49 +02:00
hist.h perf tools: Add dcacheline sort 2014-06-09 13:34:49 +02:00
hweight.c
intlist.c perf util: Add findnew method to intlist 2013-10-14 10:28:48 -03:00
intlist.h perf util: Add findnew method to intlist 2013-10-14 10:28:48 -03:00
kvm-stat.h perf kvm: Add stat support on s390 2014-07-16 17:57:33 -03:00
levenshtein.c
levenshtein.h
machine.c perf machine: Fix leak of 'struct thread' on error path 2014-07-17 10:34:07 -03:00
machine.h perf machine: Factor machine__find_thread to take tid argument 2014-03-14 18:08:42 -03:00
map.c perf tools: Remove verbose from functions prototypes 2014-07-17 11:04:42 -03:00
map.h perf tools: Remove verbose from functions prototypes 2014-07-17 11:04:42 -03:00
pager.c perf tools: Add cat as fallback pager 2014-05-21 11:48:33 +02:00
parse-events.c perf list: Fix checking for supported events on older kernels 2014-02-10 11:34:31 -03:00
parse-events.h tools: Consolidate types.h 2014-05-01 21:22:39 +02:00
parse-events.l perf tools: Move start conditions to start of the flex file 2013-10-11 12:17:31 -03:00
parse-events.y tools: Consolidate types.h 2014-05-01 21:22:39 +02:00
parse-options.c perf kvm: introduce --list-cmds for use by scripts 2014-03-14 18:08:41 -03:00
parse-options.h perf tools: Add option macro OPT_CALLBACK_OPTARG 2014-07-16 17:57:36 -03:00
path.c tools/perf: Turn strlcpy() into a __weak function 2013-10-09 08:48:49 +02:00
perf_regs.c perf tools: Cache register accesses for unwind processing 2014-06-12 16:53:19 +02:00
perf_regs.h perf tools: Cache register accesses for unwind processing 2014-06-12 16:53:19 +02:00
PERF-VERSION-GEN perf tools: Fix version when building out of tree 2013-11-07 10:40:47 -03:00
pmu.c perf tools: Fix pmu object compilation error 2014-04-22 17:39:09 +02:00
pmu.h tools: Consolidate types.h 2014-05-01 21:22:39 +02:00
pmu.l
pmu.y
probe-event.c perf probe: Improve error messages in --line option 2014-06-10 10:02:06 -03:00
probe-event.h perf probe: Replace line_list with intlist 2014-02-18 09:34:50 -03:00
probe-finder.c perf tools: Remove needless getopt.h includes 2014-07-17 12:59:00 -03:00
probe-finder.h perf probe: Support distro-style debuginfo for uprobe 2014-02-18 09:38:44 -03:00
pstack.c perf tools: Move pr_* debug macros into debug object 2014-07-17 12:58:39 -03:00
pstack.h perf tools: Finish the removal of 'self' arguments 2013-11-05 15:32:36 -03:00
python-ext-sources perf tools: Move fs.* to lib/api/fs/ 2014-02-18 09:34:49 -03:00
python.c perf tools: Factor eprintf to allow different debug variables 2014-07-17 12:58:59 -03:00
quote.c
quote.h
rblist.c perf util: Add findnew method to intlist 2013-10-14 10:28:48 -03:00
rblist.h perf util: Add findnew method to intlist 2013-10-14 10:28:48 -03:00
record.c perf tools: Enable close-on-exec flag on perf file descriptor 2014-07-18 09:09:34 +02:00
run-command.c
run-command.h
session.c perf session: Flag if the event stream is entirely in memory 2014-07-16 17:57:36 -03:00
session.h perf session: Flag if the event stream is entirely in memory 2014-07-16 17:57:36 -03:00
setup.py tools/: Convert to new topic libraries 2013-12-16 16:03:27 -03:00
sigchain.c
sigchain.h
sort.c perf hists browser: Left justify column headers 2014-07-07 15:23:44 -03:00
sort.h perf tools: Add dcacheline sort 2014-06-09 13:34:49 +02:00
srcline.c perf tools: Fix build error due to zfree() cast 2014-01-15 15:10:04 -03:00
stat.c perf stats: Add max and min stats 2013-08-07 17:35:26 -03:00
stat.h tools: Consolidate types.h 2014-05-01 21:22:39 +02:00
strbuf.c perf tools: Use zfree to help detect use after free bugs 2013-12-27 17:08:19 -03:00
strbuf.h
strfilter.c perf tools: Use zfree to help detect use after free bugs 2013-12-27 17:08:19 -03:00
strfilter.h perf tools: Finish the removal of 'self' arguments 2013-11-05 15:32:36 -03:00
string.c perf tools: Use zfree to help detect use after free bugs 2013-12-27 17:08:19 -03:00
strlist.c perf tools: Fix build error due to zfree() cast 2014-01-15 15:10:04 -03:00
strlist.h
svghelper.c perf timechart: Implement IO mode 2014-07-10 00:22:54 +02:00
svghelper.h perf timechart: Implement IO mode 2014-07-10 00:22:54 +02:00
symbol-elf.c perf symbols: Record whether a dso is 64-bit 2014-07-16 17:57:35 -03:00
symbol-minimal.c perf symbols: Record whether a dso is 64-bit 2014-07-16 17:57:35 -03:00
symbol.c perf symbols: Add ability to iterate over a dso's symbols 2014-07-16 17:57:35 -03:00
symbol.h perf symbols: Add ability to iterate over a dso's symbols 2014-07-16 17:57:35 -03:00
target.c perf record: Make per-cpu mmaps the default. 2013-11-27 14:58:36 -03:00
target.h perf target: Move the checking of which map function to call into function. 2013-12-04 13:46:37 -03:00
thread_map.c perf tools: Use zfree to help detect use after free bugs 2013-12-27 17:08:19 -03:00
thread_map.h
thread.c perf tools: Remove verbose from functions prototypes 2014-07-17 11:04:42 -03:00
thread.h perf tools: Share map_groups among threads of the same group 2014-04-28 13:43:33 +02:00
tool.h perf tools: Add attr->mmap2 support 2013-09-11 10:09:32 -03:00
top.c perf tools: Rename 'perf_record_opts' to 'record_opts 2013-12-19 14:43:45 -03:00
top.h tools: Consolidate types.h 2014-05-01 21:22:39 +02:00
trace-event-info.c perf tools: Move pr_* debug macros into debug object 2014-07-17 12:58:39 -03:00
trace-event-parse.c perf tools: Fix memory leak in event_format__print function 2014-02-18 09:34:47 -03:00
trace-event-read.c perf tools: Remove needless getopt.h includes 2014-07-17 12:59:00 -03:00
trace-event-scripting.c perf symbols: Add 'machine' member to struct addr_location 2013-12-19 17:38:27 -03:00
trace-event.c tools lib traceevent: Make plugin unload function receive pevent 2014-01-15 15:10:40 -03:00
trace-event.h perf symbols: Add 'machine' member to struct addr_location 2013-12-19 17:38:27 -03:00
tsc.c perf tools: Allow TSC conversion on any arch 2014-07-17 12:59:00 -03:00
tsc.h perf tools: Allow TSC conversion on any arch 2014-07-17 12:59:00 -03:00
unwind-libdw.c perf tools: Move pr_* debug macros into debug object 2014-07-17 12:58:39 -03:00
unwind-libdw.h perf tools: Add libdw DWARF post unwind support 2014-02-24 09:29:36 -03:00
unwind-libunwind.c perf tools: Move pr_* debug macros into debug object 2014-07-17 12:58:39 -03:00
unwind.h tools: Consolidate types.h 2014-05-01 21:22:39 +02:00
usage.c
util.c perf tools: Move pr_* debug macros into debug object 2014-07-17 12:58:39 -03:00
util.h perf tools: Add support to dynamically get cacheline size 2014-06-09 13:34:48 +02:00
values.c perf tools: Use zfree to help detect use after free bugs 2013-12-27 17:08:19 -03:00
values.h tools: Consolidate types.h 2014-05-01 21:22:39 +02:00
vdso.c perf tools: Move pr_* debug macros into debug object 2014-07-17 12:58:39 -03:00
vdso.h
wrapper.c
xyarray.c
xyarray.h