Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1522335
| From | Alexei Starovoitov <alexei.starovoitov@gmail.com> |
|---|---|
| Newsgroups | linux.kernel |
| Subject | Re: [PATCH 00/34] perf clang: Builtin clang and perfhook support |
| Date | 2016-11-15 06:00 +0100 |
| Message-ID | <sDE0F-cO-1@gated-at.bofh.it> (permalink) |
| Organization | linux.* mail to news gateway |
On Mon, Nov 14, 2016 at 8:05 PM, Wang Nan <wangnan0@huawei.com> wrote:
> This is version 2 of perf builtin clang patch series. Compare to v1,
> add an exciting feature: jit compiling perf hook functions. This
> features allows script writer report result through BPF map in a
> customized way.
looks great.
> SEC("perfhook:record_start")
> void record_start(void *ctx)
> {
> int perf_pid = getpid(), key = G_perf_pid;
> printf("Start count, perfpid=%d\n", perf_pid);
> jit_helper__map_update_elem(ctx, &GVALS, &key, &perf_pid, 0);
the name, I think, is too verbose.
Why not to keep them as bpf_map_update_elem
even for user space programs?
> SEC("perfhook:record_end")
> void record_end(void *ctx)
> {
> u64 key = -1, value;
> while (!jit_helper__map_get_next_key(ctx, &syscall_counter, &key, &key)) {
> jit_helper__map_lookup_elem(ctx, &syscall_counter, &key, &value);
> printf("syscall %ld\tcount: %ld\n", (long)key, (long)value);
this loop will be less verbose as well.
Back to linux.kernel | Previous | Next — Next in thread | Find similar | Unroll thread
Re: [PATCH 00/34] perf clang: Builtin clang and perfhook support Alexei Starovoitov <alexei.starovoitov@gmail.com> - 2016-11-15 06:00 +0100 Re: [PATCH 00/34] perf clang: Builtin clang and perfhook support "Wangnan (F)" <wangnan0@huawei.com> - 2016-11-15 06:10 +0100
csiph-web