summaryrefslogtreecommitdiffstats
path: root/tools/perf/examples
diff options
context:
space:
mode:
authorArnaldo Carvalho de Melo <acme@redhat.com>2018-11-06 20:01:26 +0100
committerArnaldo Carvalho de Melo <acme@redhat.com>2018-11-21 16:00:31 +0100
commit77ecb64050ff580963cbb8b8f1b02db91dc9efaf (patch)
treee8ffeb4aebb6287352c40080ffa01c73755011e0 /tools/perf/examples
parentperf bpf: Add simple pid_filter class accessible to BPF proggies (diff)
downloadlinux-77ecb64050ff580963cbb8b8f1b02db91dc9efaf.tar.xz
linux-77ecb64050ff580963cbb8b8f1b02db91dc9efaf.zip
perf augmented_syscalls: Drop 'write', 'poll' for testing without self pid filter
When testing system wide tracing without filtering the syscalls called by 'perf trace' itself we get into a feedback loop, drop for now those two syscalls, that are the ones that 'perf trace' does in its loop for writing the syscalls it intercepts, to help with testing till we get that filtering in place. Cc: Adrian Hunter <adrian.hunter@intel.com> Cc: David Ahern <dsahern@gmail.com> Cc: Jiri Olsa <jolsa@kernel.org> Cc: Namhyung Kim <namhyung@kernel.org> Cc: Wang Nan <wangnan0@huawei.com> Link: https://lkml.kernel.org/n/tip-rkbu536af66dbsfx51sr8yof@git.kernel.org Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Diffstat (limited to 'tools/perf/examples')
-rw-r--r--tools/perf/examples/bpf/augmented_raw_syscalls.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/tools/perf/examples/bpf/augmented_raw_syscalls.c b/tools/perf/examples/bpf/augmented_raw_syscalls.c
index ec109c12ff24..7d729319618c 100644
--- a/tools/perf/examples/bpf/augmented_raw_syscalls.c
+++ b/tools/perf/examples/bpf/augmented_raw_syscalls.c
@@ -43,7 +43,9 @@ struct augmented_filename {
char value[256];
};
+#define SYS_WRITE 1
#define SYS_OPEN 2
+#define SYS_POLL 7
#define SYS_OPENAT 257
SEC("raw_syscalls:sys_enter")
@@ -101,6 +103,8 @@ int sys_enter(struct syscall_enter_args *args)
* after the ctx memory access to prevent their down stream merging.
*/
switch (augmented_args.args.syscall_nr) {
+ case SYS_WRITE:
+ case SYS_POLL: return 0;
case SYS_OPEN: filename_arg = (const void *)args->args[0];
__asm__ __volatile__("": : :"memory");
break;