Re: [GIT PULL 0/6] perf/core improvements and fixes

From: Ingo Molnar
Date: Thu Jun 04 2015 - 03:22:10 EST



* Wangnan (F) <wangnan0@xxxxxxxxxx> wrote:

> On 2015/6/4 13:48, Ingo Molnar wrote:
> >* Arnaldo Carvalho de Melo <acme@xxxxxxxxxx> wrote:
> >
> >>Hi Ingo,
> >>
> >> Please consider applying.
> >>
> >> One of the next requests probably will have the eBPF work by Wang Nan,
> >>but I am still going thru it and want to test it thoroughly.
> >>
> >> BTW: Have you looked at it lately? It is at:
> >>
> >>http://lkml.kernel.org/r/1433144296-74992-1-git-send-email-wangnan0@xxxxxxxxxx
> >>
> >>Super summary from the above cover letter:
> >>
> >>---------------------
> >>It enables 'perf record' to filter events using eBPF programs like:
> >>
> >> # perf record --event bpf-file.o sleep 1
> >>
> >>Events are selected and filtered according to definitions in bpf-file.o.
> >Looks useful, but I think the UI needs one more tweak: could you fix it to be able
> >to filter based on the eBPF _source_ file, not just the object file?
> >
> >People want to tweak such filters as they profile, so we should use the eBPF
> >source code as the primary interface. We can compile it internally to the .o just
> >fine. The .o file is a totally uninteresting intermediate product in itself.
> >
> >I.e. we need to first think through such profiling workflows from beginning to end
> >before allowing them upstream.
>
> In a private mail Alexei Starovoitov disscussed with me about this. He said that
> he is working on a shared object which can compile C program into BPF bytecode
> on the fly. After he done his work, I think perf can support dtrace-like
> profiling that, users will be able to feed source code to perf directly on
> cmdline. He said he can release it on June. I added him to the CC-list.
>
> However I think the '.o' intermediate is still needed. [...]

So how do you generate the .o? Why cannot the tool, if it sees that the filter
parameter is eBPF source code, do that automatically?

I.e. you are making the user jump through hoops for no good reason - that's a bad
UI and a bad workflow. Please don't do that!

Thanks,

Ingo
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/