Re: [PATCH] perf tools pt: Remove obsolete paragraph in intel-pt.c

From: Arnaldo Carvalho de Melo
Date: Wed Nov 09 2016 - 08:59:37 EST


Em Wed, Nov 09, 2016 at 10:14:26AM -0300, Arnaldo Carvalho de Melo escreveu:
> Em Tue, Nov 08, 2016 at 04:11:00PM -0800, Andi Kleen escreveu:
> > From: Andi Kleen <ak@xxxxxxxxxxxxxxx>
> >
> > Since the unprivileged sched switch event was added in perf,
> > PT doesn't need need perf_event_paranoid=-1 anymore for
> > per cpu decoding. So remove the obsolete paragraph in
> > the documentation.
>
> Thanks for pointing that out, I'll do something slightly different tho,
> pointing out that from kernel X.Y.Z, when the unprivileged
> PERF_RECORD_SWITCH metadata event was introduced, this is no longer an
> issue, having to be considered only on older kernels.

It ended up as:

diff --git a/tools/perf/Documentation/intel-pt.txt b/tools/perf/Documentation/intel-pt.txt
index c6c8318e38a2..4d12db118476 100644
--- a/tools/perf/Documentation/intel-pt.txt
+++ b/tools/perf/Documentation/intel-pt.txt
@@ -546,6 +546,18 @@ mode by using the --per-thread option.
Privileged vs non-privileged users
----------------------------------

+The v4.2 kernel introduced support for a context switch metadata event,
+PERF_RECORD_SWITCH, which allows unprivileged users to see when their processes
+are scheduled out and in, just not by whom, which is left for the
+PERF_RECORD_SWITCH_CPU_WIDE, that is only accessible in system wide context,
+which in turn requires CAP_SYS_ADMIN.
+
+Please see the 45ac1403f564 ("perf: Add PERF_RECORD_SWITCH to indicate context
+switches") commit, that introduces these metadata events for further info.
+
+When working with kernels < v4.2, the following considerations must be taken,
+as the sched:sched_switch tracepoints will be used to receive such information:
+
Unless /proc/sys/kernel/perf_event_paranoid is set to -1, unprivileged users
have memory limits imposed upon them. That affects what buffer sizes they can
have as outlined above.