linux-api.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v2 0/2] perf: User/kernel time correlation and event generation
@ 2014-09-23 17:03 Pawel Moll
  2014-09-23 17:03 ` [PATCH v2 1/2] perf: Add sampling of the raw monotonic clock Pawel Moll
  2014-09-23 17:03 ` [PATCH v2 2/2] perf: Userspace event Pawel Moll
  0 siblings, 2 replies; 18+ messages in thread
From: Pawel Moll @ 2014-09-23 17:03 UTC (permalink / raw)
  To: Richard Cochran, Steven Rostedt, Ingo Molnar, Peter Zijlstra,
	Paul Mackerras, Arnaldo Carvalho de Melo, John Stultz
  Cc: linux-kernel, linux-api, Pawel Moll

Greetings,

Another week, another series. Previous versions:

- RFC: http://www.spinics.net/lists/kernel/msg1824419.html
- v1: http://thread.gmane.org/gmane.linux.kernel/1790231

The first patch adds an additional timestamp field in the perf
sample data, which can be requested for any perf event along
with normal PERF_SAMPLE_TIME. Events with both values appearing
periodically in the perf data allow user code to translate
raw monotonic time (obtained via POSIX clock API) to sched_clock
domain. Although any perf event can be used, the natural choice
would be a sched_switch trace event (for processes with root
permissions) or a hrtimer-based PERF_COUNT_SW_CPU_CLOCK.

It didn't attract any comments previously, so is just re-posted
without any changes.

The second patch, functionally orthogonal but complementing
the first one, builds on the ftrace "trace_maker" idea. It adds
a write syscall handler for the perf file descriptor, that can
be used to inject a userspace-generated data into the perf buffer.
It provides base for printf-like functionality in perf world.
If used with the previous patch, it can be also used to provide
synchronisation points for sched vs. raw monotonic time stamps
correlation.

The "uevent", besides the size and data from the write syscall,
contains a 32 bit integer value which can be used to distinguish
different types of the events. The type of following events can
be set with an additional ioctl.

Type value "0" is defined as a zero-terminated string (which
makes it trivial to generate with dprintf() library function),
but meaning of data for other types is of no interest for the
kernel. The intention is to host a list of "well known" types
(with reference parsers for them) in the user perf tool code.

Pawel Moll (2):
  perf: Add sampling of the raw monotonic clock
  perf: Userspace event

 include/linux/perf_event.h      | 16 +++++++
 include/uapi/linux/perf_event.h | 26 +++++++++++-
 kernel/events/core.c            | 93 +++++++++++++++++++++++++++++++++++++++++
 3 files changed, 134 insertions(+), 1 deletion(-)

-- 
1.9.1

^ permalink raw reply	[flat|nested] 18+ messages in thread

end of thread, other threads:[~2014-09-29 14:47 UTC | newest]

Thread overview: 18+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-09-23 17:03 [PATCH v2 0/2] perf: User/kernel time correlation and event generation Pawel Moll
2014-09-23 17:03 ` [PATCH v2 1/2] perf: Add sampling of the raw monotonic clock Pawel Moll
     [not found]   ` <1411491787-25938-2-git-send-email-pawel.moll-5wv7dgnIgG8@public.gmane.org>
2014-09-24  5:41     ` Namhyung Kim
     [not found]       ` <87sijhk21x.fsf-vfBCOVm4yAnB69T4xOojN9BPR1lH4CV8@public.gmane.org>
2014-09-25 10:49         ` Pawel Moll
2014-09-26  6:16           ` Namhyung Kim
     [not found]           ` <8738bekith.fsf@sejong.aot.lge.com>
     [not found]             ` <8738bekith.fsf-vfBCOVm4yAnB69T4xOojN9BPR1lH4CV8@public.gmane.org>
2014-09-26 10:58               ` Pawel Moll
2014-09-26 14:38                 ` Namhyung Kim
2014-09-26 15:05                   ` Pawel Moll
2014-09-26 19:25                     ` David Ahern
2014-09-29 14:47                       ` Pawel Moll
2014-09-23 17:03 ` [PATCH v2 2/2] perf: Userspace event Pawel Moll
     [not found]   ` <1411491787-25938-3-git-send-email-pawel.moll-5wv7dgnIgG8@public.gmane.org>
2014-09-24  6:07     ` Namhyung Kim
     [not found]       ` <87oau5k0u9.fsf-vfBCOVm4yAnB69T4xOojN9BPR1lH4CV8@public.gmane.org>
2014-09-24  7:20         ` Ingo Molnar
     [not found]           ` <20140924072017.GC990-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2014-09-26  6:21             ` Namhyung Kim
2014-09-26 10:59               ` Pawel Moll
2014-09-26 11:24                 ` Ingo Molnar
2014-09-25 12:45       ` Pawel Moll
2014-09-26  6:23         ` Namhyung Kim

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).