2 # Arnaldo Carvalho de Melo <acme@kernel.org>, 2017
4 perf probe
-l 2>&1 |
grep -q probe
:vfs_getname
7 cleanup_probe_vfs_getname
() {
8 if [ $had_vfs_getname -eq 1 ] ; then
9 perf probe
-q -d probe
:vfs_getname
*
13 add_probe_vfs_getname
() {
15 if [ $had_vfs_getname -eq 1 ] ; then
16 result_filename_re
="[[:space:]]+([[:digit:]]+)[[:space:]]+result->uptr.*"
17 line
=$
(perf probe
-L getname_flags
2>&1 |
grep -E "$result_filename_re" |
sed -r "s/$result_filename_re/\1/")
18 if [ -z "$line" ] ; then
19 result_aname_re
="[[:space:]]+([[:digit:]]+)[[:space:]]+result->aname = NULL;"
20 line
=$
(perf probe
-L getname_flags
2>&1 |
grep -E "$result_aname_re" |
sed -r "s/$result_aname_re/\1/")
22 perf probe
-q "vfs_getname=getname_flags:${line} pathname=result->name:string" || \
23 perf probe
$add_probe_verbose "vfs_getname=getname_flags:${line} pathname=filename:ustring"
27 skip_if_no_debuginfo
() {
28 add_probe_vfs_getname
-v 2>&1 |
grep -E -q "^(Failed to find the path for the kernel|Debuginfo-analysis is not supported)|(file has no debug information)" && return 2
32 # check if perf is compiled with libtraceevent support
33 skip_no_probe_record_support
() {
34 if [ $had_vfs_getname -eq 1 ] ; then
35 perf check feature
-q libtraceevent
&& return 1