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 majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/