From: Arnaldo Carvalho de Melo Date: Wed, 12 Dec 2018 19:54:09 +0000 (-0300) Subject: perf trace: Switch to using a struct for the aumented_raw_syscalls syscalls map values X-Git-Url: http://git.cdn.openwrt.org/?a=commitdiff_plain;h=bbab50dda724309eccec92132d3f36cb262e8728;p=openwrt%2Fstaging%2Fblogic.git perf trace: Switch to using a struct for the aumented_raw_syscalls syscalls map values We'll start adding more perf-syscall stuff, so lets do this prep step so that the next ones are just about adding more fields. Cc: Adrian Hunter Cc: Jiri Olsa Cc: Namhyung Kim Cc: Wang Nan Link: https://lkml.kernel.org/n/tip-vac4sn1ns1vj4y07lzj7y4b8@git.kernel.org Signed-off-by: Arnaldo Carvalho de Melo --- diff --git a/tools/perf/builtin-trace.c b/tools/perf/builtin-trace.c index de81918c7ad4..096380e8c213 100644 --- a/tools/perf/builtin-trace.c +++ b/tools/perf/builtin-trace.c @@ -908,6 +908,10 @@ struct syscall { struct syscall_arg_fmt *arg_fmt; }; +struct bpf_map_syscall_entry { + bool enabled; +}; + /* * We need to have this 'calculated' boolean because in some cases we really * don't know what is the duration of a syscall, for instance, when we start @@ -2583,7 +2587,9 @@ out_enomem: static int trace__set_ev_qualifier_bpf_filter(struct trace *trace) { int fd = bpf_map__fd(trace->syscalls.map); - bool value = !trace->not_ev_qualifier; + struct bpf_map_syscall_entry value = { + .enabled = !trace->not_ev_qualifier, + }; int err = 0; size_t i; @@ -2601,10 +2607,13 @@ static int trace__set_ev_qualifier_bpf_filter(struct trace *trace) static int __trace__init_syscalls_bpf_map(struct trace *trace, bool enabled) { int fd = bpf_map__fd(trace->syscalls.map); + struct bpf_map_syscall_entry value = { + .enabled = enabled, + }; int err = 0, key; for (key = 0; key < trace->sctbl->syscalls.nr_entries; ++key) { - err = bpf_map_update_elem(fd, &key, &enabled, BPF_ANY); + err = bpf_map_update_elem(fd, &key, &value, BPF_ANY); if (err) break; }