[PATCH] perf_event_open.2: srcfix

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Signed-off-by: Alejandro Colomar <alx.manpages@xxxxxxxxx>
---

Hi Michael,

Here are a few srcfixes I found.
And an unnecessary parentheses removal in an example.

Cheers,

Alex

 man2/perf_event_open.2 | 215 +++++++++++++++++++++++------------------
 1 file changed, 122 insertions(+), 93 deletions(-)

diff --git a/man2/perf_event_open.2 b/man2/perf_event_open.2
index eb7ab29ea..e7b0aa132 100644
--- a/man2/perf_event_open.2
+++ b/man2/perf_event_open.2
@@ -126,7 +126,7 @@ The leader is created first, with
 The rest of the group members are created with subsequent
 .BR perf_event_open ()
 calls with
-.IR group_fd
+.I group_fd
 being set to the file descriptor of the group leader.
 (A single event on its own is created with
 .IR group_fd " = \-1"
@@ -162,7 +162,7 @@ then
 .TP
 .BR PERF_FLAG_FD_NO_GROUP
 This flag tells the event to ignore the
-.IR group_fd
+.I group_fd
 parameter except for the purpose of setting up output redirection
 using the
 .B PERF_FLAG_FD_OUTPUT
@@ -352,7 +352,11 @@ These two dynamic PMUs create a kprobe/uprobe and attach it to the
 file descriptor generated by perf_event_open.
 The kprobe/uprobe will be destroyed on the destruction of the file descriptor.
 See fields
-.IR kprobe_func ", " uprobe_path ", " kprobe_addr ", and " probe_offset
+.IR kprobe_func ,
+.IR uprobe_path ,
+.IR kprobe_addr ,
+and
+.I probe_offset
 for more details.
 .RE
 .TP
@@ -401,7 +405,9 @@ the
 .I type
 field.
 The
-.IR config1 " and " config2
+.I config1
+and
+.I config2
 fields are also taken into account in cases where 64 bits is not
 enough to fully specify the event.
 The encoding of these fields are event dependent.
@@ -558,15 +564,15 @@ then we are measuring a hardware CPU cache event.
 To calculate the appropriate
 .I config
 value use the following equation:
-.PP
-.RS 4
 .RS 4
+.PP
+.in +4n
 .EX
 config = (perf_hw_cache_id) |
          (perf_hw_cache_op_id << 8) |
          (perf_hw_cache_op_result_id << 16);
 .EE
-.RE
+.in
 .PP
 where
 .I perf_hw_cache_id
@@ -652,24 +658,28 @@ Its parameters are set in other places.
 If
 .I type
 is
-.BR kprobe
+.B kprobe
 or
 .BR uprobe ,
 set
-.IR retprobe
+.I retprobe
 (bit 0 of
 .IR config ,
 see
 .IR /sys/bus/event_source/devices/[k,u]probe/format/retprobe )
 for kretprobe/uretprobe.
 See fields
-.IR kprobe_func ", " uprobe_path ", " kprobe_addr ", and " probe_offset
+.IR kprobe_func ,
+.IR uprobe_path ,
+.IR kprobe_addr ,
+and
+.I probe_offset
 for more details.
 .RE
 .TP
 .IR kprobe_func ", " uprobe_path ", " kprobe_addr ", and " probe_offset
 These fields describe the kprobe/uprobe for dynamic PMUs
-.BR kprobe
+.B kprobe
 and
 .BR uprobe .
 For
@@ -712,7 +722,7 @@ to try and achieve the desired rate.
 The rate of adjustment is a
 timer tick.
 .TP
-.I "sample_type"
+.I sample_type
 The various bits in this field specify which values to include
 in the sample.
 They will be recorded in a ring-buffer,
@@ -859,7 +869,7 @@ hardware at the time of the sampled
 instruction's retirement.
 .RE
 .TP
-.IR "read_format"
+.I read_format
 This field specifies the format of the data returned by
 .BR read (2)
 on a
@@ -888,7 +898,7 @@ Adds a 64-bit unique value that corresponds to the event group.
 Allows all counter values in an event group to be read with one read.
 .RE
 .TP
-.IR "disabled"
+.I disabled
 The
 .I disabled
 bit specifies whether the counter starts out disabled or enabled.
@@ -909,7 +919,7 @@ Despite
 being 0, the child events will not start until the group leader
 is enabled.
 .TP
-.IR "inherit"
+.I inherit
 The
 .I inherit
 bit specifies that this counter should count events of child
@@ -923,7 +933,7 @@ Inherit does not work for some combinations of
 values, such as
 .BR PERF_FORMAT_GROUP .
 .TP
-.IR "pinned"
+.I pinned
 The
 .I pinned
 bit specifies that the counter should always be on the CPU if at all
@@ -936,7 +946,7 @@ return end-of-file (i.e.,
 .BR read (2)
 returns 0) until the counter is subsequently enabled or disabled.
 .TP
-.IR "exclusive"
+.I exclusive
 The
 .I exclusive
 bit specifies that when this counter's group is on the CPU,
@@ -952,13 +962,13 @@ This includes any users running a system-wide
 measurement as well as any kernel use of the performance counters
 (including the commonly enabled NMI Watchdog Timer interface).
 .TP
-.IR "exclude_user"
+.I exclude_user
 If this bit is set, the count excludes events that happen in user space.
 .TP
-.IR "exclude_kernel"
+.I exclude_kernel
 If this bit is set, the count excludes events that happen in kernel space.
 .TP
-.IR "exclude_hv"
+.I exclude_hv
 If this bit is set, the count excludes events that happen in the
 hypervisor.
 This is mainly for PMUs that have built-in support for handling this
@@ -966,12 +976,12 @@ This is mainly for PMUs that have built-in support for handling this
 Extra support is needed for handling hypervisor measurements on most
 machines.
 .TP
-.IR "exclude_idle"
+.I exclude_idle
 If set, don't count when the CPU is running the idle task.
 While you can currently enable this for any event type, it is ignored
 for all but software events.
 .TP
-.IR "mmap"
+.I mmap
 The
 .I mmap
 bit enables generation of
@@ -985,7 +995,7 @@ This allows tools to notice new executable code being mapped into
 a program (dynamic shared libraries for example)
 so that addresses can be mapped back to the original code.
 .TP
-.IR "comm"
+.I comm
 The
 .I comm
 bit enables tracking of process command name as modified by the
@@ -1004,30 +1014,30 @@ can be used to differentiate the
 .BR exec (2)
 case from the others.
 .TP
-.IR "freq"
+.I freq
 If this bit is set, then
 .I sample_frequency
 not
 .I sample_period
 is used when setting up the sampling interval.
 .TP
-.IR "inherit_stat"
+.I inherit_stat
 This bit enables saving of event counts on context switch for
 inherited tasks.
 This is meaningful only if the
 .I inherit
 field is set.
 .TP
-.IR "enable_on_exec"
+.I enable_on_exec
 If this bit is set, a counter is automatically
 enabled after a call to
 .BR exec (2).
 .TP
-.IR "task"
+.I task
 If this bit is set, then
 fork/exit notifications are included in the ring buffer.
 .TP
-.IR "watermark"
+.I watermark
 If set, have an overflow notification happen when we cross the
 .I wakeup_watermark
 boundary.
@@ -1035,7 +1045,7 @@ Otherwise, overflow notifications happen after
 .I wakeup_events
 samples.
 .TP
-.IR "precise_ip" " (since Linux 2.6.35)"
+.IR precise_ip " (since Linux 2.6.35)"
 .\" commit ab608344bcbde4f55ec4cd911b686b0ce3eae076
 This controls the amount of skid.
 Skid is how many instructions
@@ -1064,7 +1074,7 @@ See also the description of
 .BR PERF_RECORD_MISC_EXACT_IP .
 .RE
 .TP
-.IR "mmap_data" " (since Linux 2.6.36)"
+.IR mmap_data " (since Linux 2.6.36)"
 .\" commit 3af9e859281bda7eb7c20b51879cf43aa788ac2e
 This is the counterpart of the
 .I mmap
@@ -1077,7 +1087,7 @@ calls that do not have
 .B PROT_EXEC
 set (for example data and SysV shared memory).
 .TP
-.IR "sample_id_all" " (since Linux 2.6.38)"
+.IR sample_id_all " (since Linux 2.6.38)"
 .\" commit c980d1091810df13f21aabbce545fd98f545bbf7
 If set, then TID, TIME, ID, STREAM_ID, and CPU can
 additionally be included in
@@ -1109,7 +1119,7 @@ struct sample_id {
 .EE
 .in
 .TP
-.IR "exclude_host" " (since Linux 3.2)"
+.IR exclude_host " (since Linux 3.2)"
 .\" commit a240f76165e6255384d4bdb8139895fac7988799
 When conducting measurements that include processes running
 VM instances (i.e., have executed a
@@ -1120,7 +1130,7 @@ This is only meaningful outside the guests; this setting does
 not change counts gathered inside of a guest.
 Currently, this functionality is x86 only.
 .TP
-.IR "exclude_guest" " (since Linux 3.2)"
+.IR exclude_guest " (since Linux 3.2)"
 .\" commit a240f76165e6255384d4bdb8139895fac7988799
 When conducting measurements that include processes running
 VM instances (i.e., have executed a
@@ -1131,15 +1141,15 @@ This is only meaningful outside the guests; this setting does
 not change counts gathered inside of a guest.
 Currently, this functionality is x86 only.
 .TP
-.IR "exclude_callchain_kernel" " (since Linux 3.7)"
+.IR exclude_callchain_kernel " (since Linux 3.7)"
 .\" commit d077526485d5c9b12fe85d0b2b3b7041e6bc5f91
 Do not include kernel callchains.
 .TP
-.IR "exclude_callchain_user" " (since Linux 3.7)"
+.IR exclude_callchain_user " (since Linux 3.7)"
 .\" commit d077526485d5c9b12fe85d0b2b3b7041e6bc5f91
 Do not include user callchains.
 .TP
-.IR "mmap2" " (since Linux 3.16)"
+.IR mmap2 " (since Linux 3.16)"
 .\" commit 13d7a2410fa637f450a29ecb515ac318ee40c741
 .\" This is tricky; was committed during 3.12 development
 .\" but right before release was disabled.
@@ -1152,7 +1162,7 @@ The
 .I mmap
 flag must also be set for this to work.
 .TP
-.IR "comm_exec" " (since Linux 3.16)"
+.IR comm_exec " (since Linux 3.16)"
 .\" commit 82b897782d10fcc4930c9d4a15b175348fdd2871
 This is purely a feature-detection flag, it does not change
 kernel behavior.
@@ -1168,7 +1178,7 @@ 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)"
+.IR use_clockid " (since Linux 4.1)"
 .\" commit 34f439278cef7b1177f8ce24f9fc81dfc6221d3b
 This allows selecting which internal Linux clock to use
 when generating timestamps via the
@@ -1177,7 +1187,7 @@ field.
 This can make it easier to correlate perf sample times with
 timestamps generated by other tools.
 .TP
-.IR "context_switch" " (since Linux 4.3)"
+.IR context_switch " (since Linux 4.3)"
 .\" commit 45ac1403f564f411c6a383a2448688ba8dd705a4
 This enables the generation of
 .B PERF_RECORD_SWITCH
@@ -1192,7 +1202,7 @@ information even with strict
 .I perf_event_paranoid
 settings.
 .TP
-.IR "wakeup_events" ", " "wakeup_watermark"
+.IR wakeup_events ", " wakeup_watermark
 This union sets how many samples
 .RI ( wakeup_events )
 or bytes
@@ -1218,25 +1228,25 @@ Prior to Linux 3.0, setting
 to 0 resulted in no overflow notifications;
 more recent kernels treat 0 the same as 1.
 .TP
-.IR "bp_type" " (since Linux 2.6.33)"
+.IR bp_type " (since Linux 2.6.33)"
 .\" commit 24f1e32c60c45c89a997c73395b69c8af6f0a84e
 This chooses the breakpoint type.
 It is one of:
 .RS
 .TP
-.BR HW_BREAKPOINT_EMPTY
+.B HW_BREAKPOINT_EMPTY
 No breakpoint.
 .TP
-.BR HW_BREAKPOINT_R
+.B HW_BREAKPOINT_R
 Count when we read the memory location.
 .TP
-.BR HW_BREAKPOINT_W
+.B HW_BREAKPOINT_W
 Count when we write the memory location.
 .TP
-.BR HW_BREAKPOINT_RW
+.B HW_BREAKPOINT_RW
 Count when we read or write the memory location.
 .TP
-.BR HW_BREAKPOINT_X
+.B HW_BREAKPOINT_X
 Count when we execute code at the memory location.
 .PP
 The values can be combined via a bitwise or, but the
@@ -1249,14 +1259,14 @@ with
 is not allowed.
 .RE
 .TP
-.IR "bp_addr" " (since Linux 2.6.33)"
+.IR bp_addr " (since Linux 2.6.33)"
 .\" commit 24f1e32c60c45c89a997c73395b69c8af6f0a84e
 This is the address of the breakpoint.
 For execution breakpoints, this is the memory address of the instruction
 of interest; for read and write breakpoints, it is the memory address
 of the memory location of interest.
 .TP
-.IR "config1" " (since Linux 2.6.39)"
+.IR config1 " (since Linux 2.6.39)"
 .\" commit a7e3ed1e470116c9d12c2f778431a481a6be8ab6
 .I config1
 is used for setting events that need an extra register or otherwise
@@ -1264,7 +1274,7 @@ do not fit in the regular config field.
 Raw OFFCORE_EVENTS on Nehalem/Westmere/SandyBridge use this field
 on Linux 3.3 and later kernels.
 .TP
-.IR "bp_len" " (since Linux 2.6.33)"
+.IR bp_len " (since Linux 2.6.33)"
 .\" commit 24f1e32c60c45c89a997c73395b69c8af6f0a84e
 .I bp_len
 is the length of the breakpoint being measured if
@@ -1280,14 +1290,14 @@ and
 For an execution breakpoint, set this to
 .IR sizeof(long) .
 .TP
-.IR "config2" " (since Linux 2.6.39)"
+.IR config2 " (since Linux 2.6.39)"
 .\" commit a7e3ed1e470116c9d12c2f778431a481a6be8ab6
 .I config2
 is a further extension of the
 .I config1
 field.
 .TP
-.IR "branch_sample_type" " (since Linux 3.4)"
+.IR branch_sample_type " (since Linux 3.4)"
 .\" commit bce38cd53e5ddba9cb6d708c4ef3d04a4016ec7e
 If
 .B PERF_SAMPLE_BRANCH_STACK
@@ -1358,20 +1368,20 @@ This requires hardware support, currently only found
 on Intel x86 Haswell or newer.
 .RE
 .TP
-.IR "sample_regs_user" " (since Linux 3.7)"
+.IR sample_regs_user " (since Linux 3.7)"
 .\" commit 4018994f3d8785275ef0e7391b75c3462c029e56
 This bit mask defines the set of user CPU registers to dump on samples.
 The layout of the register mask is architecture-specific and
 is described in the kernel header file
 .IR arch/ARCH/include/uapi/asm/perf_regs.h .
 .TP
-.IR "sample_stack_user" " (since Linux 3.7)"
+.IR sample_stack_user " (since Linux 3.7)"
 .\" commit c5ebcedb566ef17bda7b02686e0d658a7bb42ee7
 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)"
+.IR clockid " (since Linux 4.1)"
 .\" commit 34f439278cef7b1177f8ce24f9fc81dfc6221d3b
 If
 .I use_clockid
@@ -1388,13 +1398,13 @@ and
 .B CLOCK_TAI
 currently supported.
 .TP
-.IR "aux_watermark" " (since Linux 4.1)"
+.IR aux_watermark " (since Linux 4.1)"
 .\" commit 1a5941312414c71dece6717da9a0fa1303127afa
 This specifies how much data is required to trigger a
 .B PERF_RECORD_AUX
 sample.
 .TP
-.IR "sample_max_stack" " (since Linux 4.8)"
+.IR sample_max_stack " (since Linux 4.8)"
 .\" commit 97c79a38cd454602645f0470ffb444b3b75ce574
 When
 .I sample_type
@@ -1682,34 +1692,39 @@ delta since
 .I time_enabled
 (in nanoseconds) using rdtsc or similar.
 .IP
-.nf
-    u64 quot, rem;
-    u64 delta;
-    quot = (cyc >> time_shift);
-    rem = cyc & (((u64)1 << time_shift) \- 1);
-    delta = time_offset + quot * time_mult +
-            ((rem * time_mult) >> time_shift);
-.fi
+.in +4n
+.EX
+u64 quot, rem;
+u64 delta;
+
+quot  = cyc >> time_shift;
+rem   = cyc & (((u64)1 << time_shift) \- 1);
+delta = time_offset + quot * time_mult +
+        ((rem * time_mult) >> time_shift);
+.EE
+.in
 .IP
 Where
 .IR time_offset ,
 .IR time_mult ,
 .IR time_shift ,
 and
-.IR cyc
+.I cyc
 are read in the
 seqcount loop described above.
 This delta can then be added to
 enabled and possible running (if idx), improving the scaling:
 .IP
-.nf
-    enabled += delta;
-    if (idx)
-        running += delta;
-    quot = count / running;
-    rem  = count % running;
-    count = quot * enabled + (rem * enabled) / running;
-.fi
+.in +4n
+.EX
+enabled += delta;
+if (idx)
+    running += delta;
+quot  = count / running;
+rem   = count % running;
+count = quot * enabled + (rem * enabled) / running;
+.EE
+.in
 .TP
 .IR time_zero " (since Linux 3.12)"
 .\" commit fa7315871046b9a4c48627905691dbde57e51033
@@ -1718,23 +1733,31 @@ If
 .I cap_usr_time_zero
 is set, then the hardware clock (the TSC timestamp counter on x86)
 can be calculated from the
-.IR time_zero ", " time_mult ", and " time_shift " values:"
+.IR time_zero ,
+.IR time_mult ,
+and
+.I time_shift
+values:
 .IP
-.nf
-    time = timestamp - time_zero;
-    quot = time / time_mult;
-    rem  = time % time_mult;
-    cyc = (quot << time_shift) + (rem << time_shift) / time_mult;
-.fi
+.in +4n
+.EX
+time = timestamp - time_zero;
+quot = time / time_mult;
+rem  = time % time_mult;
+cyc  = (quot << time_shift) + (rem << time_shift) / time_mult;
+.EE
+.in
 .IP
 And vice versa:
 .IP
-.nf
-    quot = cyc >> time_shift;
-    rem  = cyc & (((u64)1 << time_shift) - 1);
-    timestamp = time_zero + quot * time_mult +
-        ((rem * time_mult) >> time_shift);
-.fi
+.in +4n
+.EX
+quot = cyc >> time_shift;
+rem  = cyc & (((u64)1 << time_shift) - 1);
+timestamp = time_zero + quot * time_mult +
+            ((rem * time_mult) >> time_shift);
+.EE
+.in
 .TP
 .I data_head
 This points to the head of the data section.
@@ -1785,7 +1808,7 @@ The desired offset and size must be page aligned, and the size
 must be a power of two.
 These values are then passed to mmap in order to map the AUX buffer.
 Pages in the AUX buffer are included as part of the
-.BR RLIMIT_MEMLOCK
+.B RLIMIT_MEMLOCK
 resource limit (see
 .BR setrlimit (2)),
 and also as part of the
@@ -1802,10 +1825,14 @@ new data began, and it is the consumer's job to disable
 measurement while reading to avoid possible data races.
 .IP
 The
-.IR aux_head " and " aux_tail
+.I aux_head
+and
+.I aux_tail
 ring buffer pointers have the same behavior and ordering
 rules as the previous described
-.IR data_head " and " data_tail .
+.I data_head
+and
+.IR data_tail .
 .PP
 The following 2^n ring-buffer pages have the layout described below.
 .PP
@@ -1897,9 +1924,9 @@ system call.
 .BR PERF_RECORD_MISC_SWITCH_OUT " (since Linux 4.3)"
 .\" commit 45ac1403f564f411c6a383a2448688ba8dd705a4
 When a
-.BR PERF_RECORD_SWITCH
+.B PERF_RECORD_SWITCH
 or
-.BR PERF_RECORD_SWITCH_CPU_WIDE
+.B PERF_RECORD_SWITCH_CPU_WIDE
 record is generated, this bit indicates that the
 context switch is away from the current process
 (instead of into the current process).
@@ -2267,7 +2294,7 @@ Support for
 .IR mispred ,
 .IR predicted ,
 and
-.IR cycles
+.I cycles
 is optional; if not supported, those
 values will be 0.
 .PP
@@ -2284,7 +2311,9 @@ is enabled, then the user CPU registers are recorded.
 The
 .I abi
 field is one of
-.BR PERF_SAMPLE_REGS_ABI_NONE ", " PERF_SAMPLE_REGS_ABI_32 " or"
+.BR PERF_SAMPLE_REGS_ABI_NONE ,
+.BR PERF_SAMPLE_REGS_ABI_32 ,
+or
 .BR PERF_SAMPLE_REGS_ABI_64 .
 .IP
 The
-- 
2.28.0




[Index of Archives]     [Kernel Documentation]     [Netdev]     [Linux Ethernet Bridging]     [Linux Wireless]     [Kernel Newbies]     [Security]     [Linux for Hams]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux Admin]     [Samba]

  Powered by Linux