[PATCH v3 00/13] perf tools: BPF related update

From: Wang Nan
Date: Mon Nov 30 2015 - 02:40:19 EST


This patch set is based on perf/core.

Compare with v2:
- Checks return value of strdup()
- Change BPF map setting syntax to 'maps:[mapname].[event:value]<indices>=value'
For example:
'maps:mapname.value[1,3...5]=10'
Test cases in each commit message are also changed correspondingly.
(Thanks to Namhyung Kim)

This patch set improves perf's BPF support:

- Support filling BPF array with values

Users are allowed to pass something to BPF program through command
line without changing the program itself.

- Support filling BPF event array with events

BPF program can read PMU counters through BPF's perf_event_read()
helper.

- Support bpf_output_event() helper

BPF program can issue perf event to perf.data.

In most of the patches I list commands for testing them, both normal
case and error case.

He Kuang (2):
perf tools: Support perf event alias name
perf record: Support custom vmlinux path

Wang Nan (11):
tools lib bpf: Check return value of strdup when reading map names
perf tools: Add API to config maps in bpf object
perf tools: Enable BPF object configure syntax
perf record: Apply config to BPF objects before recording
perf tools: Enable passing event to BPF object
perf tools: Support setting different slots in a BPF map separately
perf tools: Enable indices setting syntax for BPF maps
perf tools: Introduce bpf-output event
perf data: Add u32_hex data type
perf data: Support converting data from bpf_perf_event_output()
perf tools: Always give options even it not compiled

tools/lib/bpf/libbpf.c | 13 +-
tools/perf/Documentation/perf-record.txt | 10 +-
tools/perf/builtin-probe.c | 15 +-
tools/perf/builtin-record.c | 36 +-
tools/perf/util/bpf-loader.c | 700 +++++++++++++++++++++++++++++++
tools/perf/util/bpf-loader.h | 59 +++
tools/perf/util/data-convert-bt.c | 117 +++++-
tools/perf/util/evlist.c | 16 +
tools/perf/util/evlist.h | 4 +
tools/perf/util/evsel.c | 7 +
tools/perf/util/evsel.h | 1 +
tools/perf/util/parse-events.c | 125 +++++-
tools/perf/util/parse-events.h | 20 +-
tools/perf/util/parse-events.l | 16 +-
tools/perf/util/parse-events.y | 123 +++++-
tools/perf/util/parse-options.c | 113 ++++-
tools/perf/util/parse-options.h | 5 +
17 files changed, 1345 insertions(+), 35 deletions(-)

--
1.8.3.4

--
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/