Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

perf intel-pt: Update documentation about context switch events

Since the unprivileged sched switch event was added in perf, PT doesn't
need need perf_event_paranoid=-1 anymore for per cpu decoding.

Add a note stating that that is only needed for kernels < 4.2.

Reported-by: Andi Kleen <ak@linux.intel.com>
Report-Link: http://lkml.kernel.org/r/http://lkml.kernel.org/n/tip-x2ybghpqxxn3zu0m8o7qi42r@git.kernel.org
Acked-by: Adrian Hunter <adrian.hunter@intel.com>
Fixes: 45ac1403f564 ("perf: Add PERF_RECORD_SWITCH to indicate context switches")
Link: http://lkml.kernel.org/n/tip-x2ybghpqxxn3zu0m8o7qi42r@git.kernel.org
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>

+17 -2
+17 -2
tools/perf/Documentation/intel-pt.txt
··· 550 550 have memory limits imposed upon them. That affects what buffer sizes they can 551 551 have as outlined above. 552 552 553 + The v4.2 kernel introduced support for a context switch metadata event, 554 + PERF_RECORD_SWITCH, which allows unprivileged users to see when their processes 555 + are scheduled out and in, just not by whom, which is left for the 556 + PERF_RECORD_SWITCH_CPU_WIDE, that is only accessible in system wide context, 557 + which in turn requires CAP_SYS_ADMIN. 558 + 559 + Please see the 45ac1403f564 ("perf: Add PERF_RECORD_SWITCH to indicate context 560 + switches") commit, that introduces these metadata events for further info. 561 + 562 + When working with kernels < v4.2, the following considerations must be taken, 563 + as the sched:sched_switch tracepoints will be used to receive such information: 564 + 553 565 Unless /proc/sys/kernel/perf_event_paranoid is set to -1, unprivileged users are 554 566 not permitted to use tracepoints which means there is insufficient side-band 555 567 information to decode Intel PT in per-cpu mode, and potentially workload-only ··· 576 564 ----------------------- 577 565 578 566 The sched_switch tracepoint is used to provide side-band data for Intel PT 579 - decoding. sched_switch events are automatically added. e.g. the second event 580 - shown below 567 + decoding in kernels where the PERF_RECORD_SWITCH metadata event isn't 568 + available. 569 + 570 + The sched_switch events are automatically added. e.g. the second event shown 571 + below: 581 572 582 573 $ perf record -vv -e intel_pt//u uname 583 574 ------------------------------------------------------------