Subject: Re: [RFC PATCH net-next 2/4] perf tools: Introduce bpf-output event

From: Sergei Shtylyov <[email-masked]>
Date: Wed, 28 Oct 2015 16:13:12 +0300

Hello.

On 10/28/2015 1:55 PM, Wang Nan wrote:

> Commit a43eec304259a6c637f4014a6d4767159b6a3aa3 (bpf: introduce
> bpf_perf_event_output() helper) add a helper to enable BPF program

    You haven't run the patch thru scripts/checkpath.pl, I guess? It now 
enforces the certain style of citing a commit.

> output data to perf ring buffer through a new type of perf event
> PERF_COUNT_SW_BPF_OUTPUT. This patch enable perf to create perf
> event of that type. Now perf user can use following cmdline to
> receive output data from BPF programs:
>
>   # perf record -a -e evt=bpf-output/no-inherit/ \
>                    -e ./test_bpf_output.c/maps.bpf-output.event=evt/ ls
>
>   # perf script
> 	perf 12927 [004] 355971.129276:          0 evt=bpf-output/no-inherit/:  ffffffff811ed5f1 sys_write
> 	perf 12927 [004] 355971.129279:          0 evt=bpf-output/no-inherit/:  ffffffff811ed5f1 sys_write
> 	...
>
> Signed-off-by: Wang Nan <[email-masked]>
> Cc: Alexei Starovoitov <[email-masked]>
> Cc: Arnaldo Carvalho de Melo <[email-masked]>
> Cc: Brendan Gregg <[email-masked]>
> Cc: David S. Miller <[email-masked]>
> ---
>   tools/perf/util/evsel.c        | 6 ++++++
>   tools/perf/util/parse-events.c | 4 ++++
>   tools/perf/util/parse-events.l | 1 +
>   3 files changed, 11 insertions(+)
>
> diff --git a/tools/perf/util/evsel.c b/tools/perf/util/evsel.c
> index 397fb4e..f01defb 100644
> --- a/tools/perf/util/evsel.c
> +++ b/tools/perf/util/evsel.c
> @@ -224,6 +224,12 @@ struct perf_evsel *perf_evsel__new_idx(struct perf_event_attr *attr, int idx)
>   	if (evsel != NULL)
>   		perf_evsel__init(evsel, attr, idx);
>
> +	if ((evsel->attr.type == PERF_TYPE_SOFTWARE) &&
> +	    (evsel->attr.config == PERF_COUNT_SW_BPF_OUTPUT)) {

    Inner parens not necessary here.

[...]

MBR, Sergei