linux-api.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/2] perf: User/kernel time correlation and event generation
@ 2014-09-18 14:34 Pawel Moll
  2014-09-18 14:34 ` [PATCH 1/2] perf: Add sampling of the raw monotonic clock Pawel Moll
                   ` (2 more replies)
  0 siblings, 3 replies; 22+ messages in thread
From: Pawel Moll @ 2014-09-18 14:34 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,

This is a second spin of the short series posted last week:

http://www.spinics.net/lists/kernel/msg1824419.html

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 ioctl 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.

First version of the patch was taking a zero-terminated string
as an argument. Now it is taking a custom structure with "type"
and "size" integer fields followed by data. Type value "0"
is defined as a zero-terminated string (although size, including
the NULL character, must still be provided), 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 software event and ioctl

 include/linux/perf_event.h      | 10 +++++
 include/uapi/linux/perf_event.h | 36 +++++++++++++++++-
 kernel/events/core.c            | 81 +++++++++++++++++++++++++++++++++++++++++
 3 files changed, 126 insertions(+), 1 deletion(-)

-- 
1.9.1

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

end of thread, other threads:[~2014-11-03 15:04 UTC | newest]

Thread overview: 22+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-09-18 14:34 [PATCH 0/2] perf: User/kernel time correlation and event generation Pawel Moll
2014-09-18 14:34 ` [PATCH 1/2] perf: Add sampling of the raw monotonic clock Pawel Moll
     [not found]   ` <1411050873-9310-2-git-send-email-pawel.moll-5wv7dgnIgG8@public.gmane.org>
2014-09-29 15:28     ` Peter Zijlstra
     [not found]       ` <20140929152832.GL4140-IIpfhp3q70z/8w/KjCw3T+5/BudmfyzbbVWyRVo5IupeoWH0uzbU5w@public.gmane.org>
2014-09-29 15:45         ` Pawel Moll
2014-09-18 14:34 ` [PATCH 2/2] perf: Userspace software event and ioctl Pawel Moll
2014-09-23 17:02   ` Pawel Moll
2014-09-24  7:49     ` Ingo Molnar
     [not found]       ` <20140924074942.GB3797-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2014-09-25 17:20         ` Pawel Moll
2014-09-25 18:33           ` Ingo Molnar
     [not found]             ` <20140925183342.GB6854-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2014-09-26 10:48               ` Pawel Moll
2014-09-26 11:23                 ` Ingo Molnar
     [not found]                   ` <20140926112312.GB9870-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2014-09-26 11:26                     ` Pawel Moll
2014-09-26 11:31                       ` Ingo Molnar
2014-09-27 17:14             ` Frederic Weisbecker
     [not found]               ` <CAFTL4hy1d8twv2tGxc4EhCeDm7ApnH7SuK26W1yaekKhCrPMZA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2014-09-29 14:52                 ` Pawel Moll
2014-09-29 15:32   ` Peter Zijlstra
     [not found]     ` <20140929153257.GM4140-IIpfhp3q70z/8w/KjCw3T+5/BudmfyzbbVWyRVo5IupeoWH0uzbU5w@public.gmane.org>
2014-09-29 15:53       ` Pawel Moll
2014-11-03 14:48         ` Tomeu Vizoso
2014-11-03 15:04           ` Pawel Moll
     [not found] ` <1411050873-9310-1-git-send-email-pawel.moll-5wv7dgnIgG8@public.gmane.org>
2014-09-18 15:02   ` [PATCH 0/2] perf: User/kernel time correlation and event generation Christopher Covington
     [not found]     ` <541AF40B.7070604-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org>
2014-09-18 15:07       ` Pawel Moll
2014-09-18 15:48         ` Christopher Covington

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).