[PATCH 34/34] perf clang git: Export getpid() to perf hook

From: Wang Nan
Date: Mon Nov 14 2016 - 23:11:09 EST


After this patch perf hooks can retrive pid of perf itself by calling
getpid. It is important for excluding event from perf.

Signed-off-by: Wang Nan <wangnan0@xxxxxxxxxx>
Cc: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
Cc: Alexei Starovoitov <ast@xxxxxx>
Cc: He Kuang <hekuang@xxxxxxxxxx>
Cc: Jiri Olsa <jolsa@xxxxxxxxxx>
Cc: Zefan Li <lizefan@xxxxxxxxxx>
Cc: pi3orama@xxxxxxx
---
tools/perf/util/c++/bpf-helper-str.c | 1 +
tools/perf/util/c++/clang.cpp | 1 +
2 files changed, 2 insertions(+)

diff --git a/tools/perf/util/c++/bpf-helper-str.c b/tools/perf/util/c++/bpf-helper-str.c
index 69aca3c..eedee89 100644
--- a/tools/perf/util/c++/bpf-helper-str.c
+++ b/tools/perf/util/c++/bpf-helper-str.c
@@ -13,6 +13,7 @@ const char clang_builtin_bpf_helper_str[] =
"extern void test__clang_callback(int);\n"
"extern int printf(const char *, ...);\n"
"extern int puts(const char *);\n"
+"extern int getpid(void);\n"
"extern int jit_helper__map_update_elem(void *, void *, void *, void *, unsigned long);\n"
"extern int jit_helper__map_lookup_elem(void *, void *, void *, void *);\n"
"extern int jit_helper__map_get_next_key(void *, void *, void *, void *);\n"
diff --git a/tools/perf/util/c++/clang.cpp b/tools/perf/util/c++/clang.cpp
index db31fb2..d6af336 100644
--- a/tools/perf/util/c++/clang.cpp
+++ b/tools/perf/util/c++/clang.cpp
@@ -236,6 +236,7 @@ static std::map<const std::string, const void *> exported_funcs =
EXPORT(test__clang_callback),
EXPORT(printf),
EXPORT(puts),
+ EXPORT(getpid),
EXPORT(JIT_HELPER_FUNC_NAME(map_update_elem)),
EXPORT(JIT_HELPER_FUNC_NAME(map_lookup_elem)),
EXPORT(JIT_HELPER_FUNC_NAME(map_get_next_key)),
--
2.10.1