lkml.org 
[lkml]   [2022]   [Apr]   [22]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
Subject[PATCH 0/7] libperf: Add interface for overflow check of sampling events
Date
This patch series adds interface for overflow check of sampling events
to libperf.

First patch move 'open_flags' from tools/perf to evsel::open_flags.

Second patch introduce perf_{evsel, evlist}__open_opt() with extensible
structure opts.

Third patch add support for overflow handling of sampling events.

Fourth patch adds a interface to check overflowed events.

Fifth patch adds a interface to perform IOC_REFRESH and IOC_PERIOD.

Sixth and seventh patch adds tests.


---
Previous version at:
https://lore.kernel.org/linux-perf-users/20220325043829.224045-1-nakamura.shun@fujitsu.com/

Changes in v1:
- Move initialization/reference of evsel->open_flags from the first
patch to the second patch
- Move signal-related handling and related fields of the opts
structure from the second patch to the third patch
- Move _GNU_SOURCE from test-evlist.c to Makefile
- Delete *_cpu() function
- Refactor the fourth patch
- Fix test to use real-time signals instead of standard signals

Changes in RFC v2:
- Delete perf_evsel__set_close_on_exec() function
- Introduce perf_{evsel, evlist}__open_opt() with extensible structure
opts
- Fix perf_evsel__set_signal() to a internal function
- Add bool type argument to perf_evsel__check_{fd, fd_cpu}() to indicate
overflow results


Shunsuke Nakamura (7):
libperf: Move 'open_flags' from tools/perf to evsel::open_flags
libperf: Introduce perf_{evsel, evlist}__open_opt with extensible
struct opts
libperf: Add support for overflow handling of sampling events
libperf: Add perf_evsel__has_fd() functions
libperf: Add perf_evsel__{refresh, period}() functions
libperf test: Add test_stat_overflow()
libperf test: Add test_stat_overflow_event()

tools/lib/perf/Documentation/libperf.txt | 17 +++
tools/lib/perf/Makefile | 1 +
tools/lib/perf/evlist.c | 20 +++
tools/lib/perf/evsel.c | 166 ++++++++++++++++++++++-
tools/lib/perf/include/internal/evsel.h | 2 +
tools/lib/perf/include/perf/evlist.h | 3 +
tools/lib/perf/include/perf/evsel.h | 29 ++++
tools/lib/perf/internal.h | 44 ++++++
tools/lib/perf/libperf.map | 5 +
tools/lib/perf/tests/test-evlist.c | 112 ++++++++++++++-
tools/lib/perf/tests/test-evsel.c | 108 +++++++++++++++
tools/perf/util/evsel.c | 16 ++-
tools/perf/util/evsel.h | 1 -
13 files changed, 508 insertions(+), 16 deletions(-)

--
2.25.1

\
 
 \ /
  Last update: 2022-04-22 11:45    [W:0.071 / U:0.052 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site