linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [RFC 0/5] perf: Per PMU access controls (paranoid setting)
@ 2018-09-19 12:27 Tvrtko Ursulin
  2018-09-19 12:27 ` [RFC 1/5] perf: Move some access checks later in perf_event_open Tvrtko Ursulin
                   ` (5 more replies)
  0 siblings, 6 replies; 38+ messages in thread
From: Tvrtko Ursulin @ 2018-09-19 12:27 UTC (permalink / raw)
  To: linux-kernel; +Cc: tursulin, tvrtko.ursulin, Tvrtko Ursulin

From: Tvrtko Ursulin <tvrtko.ursulin@intel.com>

For situations where sysadmins might want to allow different level of
access control for different PMUs, we start creating per-PMU
perf_event_paranoid controls in sysfs.

These work in equivalent fashion as the existing perf_event_paranoid
sysctl, which now becomes the parent control for each PMU.

On PMU registration the global/parent value will be inherited by each PMU,
as it will be propagated to all registered PMUs when the sysctl is
updated.

At any later point individual PMU access controls, located in
<sysfs>/device/<pmu-name>/perf_event_paranoid, can be adjusted to achieve
fine grained access control.

Discussion from previous posting:
https://lkml.org/lkml/2018/5/21/156

New in this version:

1. Hopefully fixed build issues in core-book3s.c. (Thanks kbuild test robot!)
2. Perf tool support for new controls, largely contributed by Jiri Olsa.

Tvrtko Ursulin (5):
  perf: Move some access checks later in perf_event_open
  perf: Pass pmu pointer to perf_paranoid_* helpers
  perf: Allow per PMU access control
  perf Documentation: Document the per PMU perf_event_paranoid interface
  tools/perf: Add support for per-PMU access control

 .../sysfs-bus-event_source-devices-events     |  14 +++
 arch/powerpc/perf/core-book3s.c               |  31 ++++--
 arch/x86/events/intel/bts.c                   |   2 +-
 arch/x86/events/intel/core.c                  |   2 +-
 arch/x86/events/intel/p4.c                    |   2 +-
 include/linux/perf_event.h                    |  18 ++-
 kernel/events/core.c                          | 104 +++++++++++++++---
 kernel/sysctl.c                               |   4 +-
 kernel/trace/trace_event_perf.c               |   6 +-
 tools/perf/arch/arm/util/cs-etm.c             |   2 +-
 tools/perf/arch/arm64/util/arm-spe.c          |   2 +-
 tools/perf/arch/x86/util/intel-bts.c          |   2 +-
 tools/perf/arch/x86/util/intel-pt.c           |   2 +-
 tools/perf/util/evsel.c                       |  41 ++++++-
 tools/perf/util/pmu.c                         |  17 +++
 tools/perf/util/pmu.h                         |   1 +
 16 files changed, 204 insertions(+), 46 deletions(-)

-- 
2.17.1


^ permalink raw reply	[flat|nested] 38+ messages in thread

end of thread, other threads:[~2018-10-04 17:14 UTC | newest]

Thread overview: 38+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-09-19 12:27 [RFC 0/5] perf: Per PMU access controls (paranoid setting) Tvrtko Ursulin
2018-09-19 12:27 ` [RFC 1/5] perf: Move some access checks later in perf_event_open Tvrtko Ursulin
2018-09-19 12:27 ` [RFC 2/5] perf: Pass pmu pointer to perf_paranoid_* helpers Tvrtko Ursulin
2018-09-19 12:27 ` [RFC 3/5] perf: Allow per PMU access control Tvrtko Ursulin
2018-09-27 20:15   ` Andi Kleen
2018-09-28  8:57     ` Tvrtko Ursulin
2018-09-19 12:27 ` [RFC 4/5] perf Documentation: Document the per PMU perf_event_paranoid interface Tvrtko Ursulin
2018-09-19 12:27 ` [RFC 5/5] tools/perf: Add support for per-PMU access control Tvrtko Ursulin
2018-09-28 10:26 ` [RFC 0/5] perf: Per PMU access controls (paranoid setting) Thomas Gleixner
2018-09-28 13:22   ` Tvrtko Ursulin
2018-09-28 14:02     ` Thomas Gleixner
2018-09-28 14:56       ` Tvrtko Ursulin
2018-09-28 15:23         ` Thomas Gleixner
2018-09-28 15:45       ` Alexey Budankov
2018-09-28 18:20         ` Thomas Gleixner
2018-09-28 20:45           ` Andi Kleen
2018-09-29  6:19             ` Thomas Gleixner
2018-10-01  6:25           ` Alexey Budankov
2018-09-28 15:12     ` Jann Horn
2018-09-28 22:02       ` Jann Horn
2018-10-01  6:27         ` Alexey Budankov
2018-09-28 16:41   ` Mark Rutland
2018-09-28 17:23     ` Andi Kleen
2018-09-28 17:40       ` Mark Rutland
2018-09-28 20:49         ` Andi Kleen
2018-09-28 20:54           ` Jann Horn
2018-09-28 20:59             ` Andi Kleen
2018-09-28 21:22               ` Jann Horn
2018-09-28 21:27                 ` Andi Kleen
2018-10-01  6:25                   ` Alexey Budankov
2018-10-01 16:11                     ` Thomas Gleixner
2018-10-01 16:15                       ` Jann Horn
2018-10-01 20:51                       ` Alexey Budankov
2018-10-02  6:40                         ` Thomas Gleixner
2018-10-02 11:44                           ` Alexey Budankov
2018-10-03 17:01                         ` Jann Horn
2018-10-04 17:11                           ` Alexey Budankov
2018-09-29  6:30               ` Thomas Gleixner

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).