diff --git a/man2/perf_event_open.2 b/man2/perf_event_open.2 index ec4463c85..257be7c06 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 ()