[lkml]   [2016]   [Feb]   [19]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
Subject[PATCH 00/55] perf tools: Bugfix, BPF improvements and overwrite ring buffer support
Hi Arnaldo,

This is this week's perf BPF and overwrite ring buffer patch set.

Please note that this patch set is based on your perf/core, not
tmp.perf/bpf_map, because there is a bug similar to what Jiri pointed
out in commit 5c78fe3 in the bpf_map branch.

A bug related to newest libbabeltrace is found and fixed. Similar to
commit 5141d73, this fix is safe to old version of libbabeltrace.

The following changes since commit 1a3dcca461e81fbee1e588b2e6e1eae0b2b911d3:

perf stat: Handled scaled == -1 case for counters (2016-02-18 13:50:49 -0300)

are available in the git repository at: tags/perf-core-for-acme

for you to fetch changes up to 6b8e82587380be165876e423b9d46f41cb5b4020:

perf tools: Don't warn about out of order event if write_backward is used (2016-02-19 11:26:57 +0000)

perf improvements:

- Bug fix: byte order of the first BPF output sample incorrect when
converting to CTF.

- Fix compiling warning Jiri found.

- Improve error messages.

Signed-off-by: Wang Nan <>

Wang Nan (55):
perf tools: Record text offset in dso to calculate objdump address
perf tools: Adjust symbol for shared objects
perf tools: Rename bpf_prog_priv__clear() to clear_prog_priv()
perf tools: Fix checking asprintf return value
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: Create config_term_names array
perf stat: Forbid user passing improper config terms
perf tools: Rename and move pmu_event_name to get_config_name
perf tools: Enable config raw and numeric events
perf tools: Enable config and setting names for legacy cache events
perf tools: Support setting different slots in a BPF map separately
perf tools: Enable indices setting syntax for BPF maps
perf tools: Pass tracepoint options to BPF script
perf tools: Introduce bpf-output event
perf data: Support converting data from bpf_perf_event_output()
perf data: Explicitly set byte order for integer types
perf core: Introduce new ioctl options to pause and resume ring buffer
perf core: Set event's default overflow_handler
perf core: Prepare writing into ring buffer from end
perf core: Add backward attribute to perf event
perf core: Reduce perf event output overhead by new overflow handler
perf tools: Only validate is_pos for tracking evsels
perf tools: Print write_backward value in perf_event_attr__fprintf
perf tools: Make ordered_events reusable
perf record: Extract synthesize code to record__synthesize()
perf tools: Add perf_data_file__switch() helper
perf record: Turns auxtrace_snapshot_enable into 3 states
perf record: Introduce record__finish_output() to finish a
perf record: Add '--timestamp-filename' option to append timestamp to output filename
perf record: Split output into multiple files via '--switch-output'
perf record: Force enable --timestamp-filename when --switch-output is provided
perf record: Disable buildid cache options by default in switch output mode
perf record: Re-synthesize tracking events after output switching
perf record: Generate tracking events for process forked by perf
perf record: Ensure return non-zero rc when mmap fail
perf record: Prevent reading invalid data in record__mmap_read
perf tools: Add evlist channel helpers
perf tools: Automatically add new channel according to evlist
perf tools: Operate multiple channels
perf tools: Squash overwrite setting into channel
perf record: Don't read from and poll overwrite channel
perf record: Don't poll on overwrite channel
perf tools: Detect avalibility of write_backward
perf tools: Enable overwrite settings
perf tools: Set write_backward attribut bit for overwrite events
perf tools: Record fd into perf_mmap
perf tools: Add API to pause a channel
perf record: Toggle overwrite ring buffer for reading
perf record: Rename variable to make code clear
perf record: Read from backward ring buffer
perf record: Allow generate tracking events at the end of output
perf tools: Don't warn about out of order event if write_backward is used

include/linux/perf_event.h | 22 +-
include/uapi/linux/perf_event.h | 4 +-
kernel/events/core.c | 73 +++-
kernel/events/internal.h | 11 +
kernel/events/ring_buffer.c | 63 +++-
tools/perf/builtin-record.c | 598 ++++++++++++++++++++++++++-----
tools/perf/builtin-stat.c | 1 +
tools/perf/perf.h | 2 +
tools/perf/tests/bpf.c | 2 +-
tools/perf/tests/parse-events.c | 52 +++
tools/perf/util/bpf-loader.c | 724 +++++++++++++++++++++++++++++++++++++-
tools/perf/util/bpf-loader.h | 59 ++++
tools/perf/util/data-convert-bt.c | 118 ++++++-
tools/perf/util/data.c | 36 ++
tools/perf/util/data.h | 11 +-
tools/perf/util/dso.h | 1 +
tools/perf/util/evlist.c | 355 +++++++++++++++++--
tools/perf/util/evlist.h | 70 +++-
tools/perf/util/evsel.c | 23 ++
tools/perf/util/evsel.h | 11 +
tools/perf/util/map.c | 14 +
tools/perf/util/ordered-events.c | 5 +
tools/perf/util/parse-events.c | 309 ++++++++++++++--
tools/perf/util/parse-events.h | 27 +-
tools/perf/util/parse-events.l | 21 +-
tools/perf/util/parse-events.y | 134 ++++++-
tools/perf/util/record.c | 11 +
tools/perf/util/session.c | 22 +-
tools/perf/util/symbol-elf.c | 25 +-
29 files changed, 2565 insertions(+), 239 deletions(-)

 \ /
  Last update: 2016-02-19 13:21    [W:0.387 / U:0.560 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site