2015-07-23 17:04:40

by Vince Weaver

[permalink] [raw]
Subject: [patch 02/11] perf_event_open.2: 4.1 clockid support


This manpage patch relates to the addition of the clockid
functionaliry added in the following commit:

commit 34f439278cef7b1177f8ce24f9fc81dfc6221d3b
Author: Peter Zijlstra <[email protected]>

perf: Add per event clockid support

Signed-off-by: Peter Zijlstra (Intel) <[email protected]>
Cc: Andrew Morton <[email protected]>
Cc: Arnaldo Carvalho de Melo <[email protected]>
Cc: David Ahern <[email protected]>
Cc: Jiri Olsa <[email protected]>
Cc: John Stultz <[email protected]>
Cc: Linus Torvalds <[email protected]>
Cc: Peter Zijlstra <[email protected]>
Cc: Stephane Eranian <[email protected]>
Cc: Thomas Gleixner <[email protected]>
Signed-off-by: Ingo Molnar <[email protected]>


Signed-off-by: Vince Weaver <[email protected]>

diff --git a/man2/perf_event_open.2 b/man2/perf_event_open.2
index 71bfb17..a6b90ec 100644
--- a/man2/perf_event_open.2
+++ b/man2/perf_event_open.2
@@ -233,7 +233,9 @@ struct perf_event_attr {
/* exclude user callchains */
mmap2 : 1, /* include mmap with inode data */
comm_exec : 1, /* flag comm events that are due to exec */
- __reserved_1 : 39;
+ use_clockid : 1, /* use clockid for time fields */
+
+ __reserved_1 : 38;

union {
__u32 wakeup_events; /* wakeup every n events */
@@ -255,7 +257,7 @@ struct perf_event_attr {
__u64 sample_regs_user; /* user regs to dump on samples */
__u32 sample_stack_user; /* size of stack to dump on
samples */
- __u32 __reserved_2; /* Align to u64 */
+ __s32 clockid; /* clock to use for time fields */
__u64 sample_regs_intr; /* regs to dump on samples */
};
.fi
@@ -1086,6 +1088,15 @@ reported was caused by a call to
This allows tools to distinguish between the various
types of process renaming.
.TP
+.IR "use_clockid" " (since Linux 4.1)"
+.\" commit 34f439278cef7b1177f8ce24f9fc81dfc6221d3b
+This allows selecting which internal Linux clock to use
+when generating timestamps via the
+.I clockid
+field.
+This can make it easier to correlate perf sample times with
+timestamps generated by other tools.
+.TP
.IR "wakeup_events" ", " "wakeup_watermark"
This union sets how many samples
.RI ( wakeup_events )
@@ -1260,6 +1271,19 @@ described in the kernel header
This defines the size of the user stack to dump if
.B PERF_SAMPLE_STACK_USER
is specified.
+.TP
+.IR "clockid" " (since Linux 4.1)"
+.\" commit 34f439278cef7b1177f8ce24f9fc81dfc6221d3b
+If
+.I use_clockid
+is set, then this field selects which internal Linux timer to
+use for timestamps.
+The available timers are defined in
+.IR linux/time.h ,
+with
+.BR CLOCK_MONOTONIC , CLOCK_MONOTONIC_RAW , CLOCK_REALTIME ,
+.BR CLOCK_BOOTTIME ", and " CLOCK_TAI
+currently supported.
.SS Reading results
Once a
.BR perf_event_open ()