[PATCH 0/8] perf/x86: Rework msr probe interface

From: Jiri Olsa
Date: Mon May 27 2019 - 17:54:55 EST


hi,
following up on [1], [2] and [3], this patchset adds update
attribute groups to pmu, factors out the MSR probe code and
use it in msr,cstate* and rapl PMUs.

The functionality stays the same with one exception:
the event is not exported if the rdmsr return zero
on event's msr.

And also: ;-)
> Somewhere along the line you lost the explanation of _why_ we're doing
> this; namely: virt sucks.

Also available in:
git://git.kernel.org/pub/scm/linux/kernel/git/jolsa/perf.git
perf/msr

Tested on snb and skylake servers.

thanks,
jirka


[1] https://lore.kernel.org/lkml/20190301114250.GA23459@krava/
[2] https://lore.kernel.org/lkml/20190318182116.17388-1-jolsa@xxxxxxxxxx/
[3] https://lore.kernel.org/lkml/20190512155518.21468-1-jolsa@xxxxxxxxxx/
---
Jiri Olsa (8):
perf/x86: Add msr probe interface
perf/x86/msr: Use new probe function
perf/x86/cstate: Use new probe function
perf/x86/rapl: Use new msr detection interface
perf/x86/rapl: Get rapl_cntr_mask from new probe framework
perf/x86/rapl: Get msr values from new probe framework
perf/x86/rapl: Get attributes from new probe framework
perf/x86/rapl: Get quirk state from new probe framework

arch/x86/events/Makefile | 2 +-
arch/x86/events/intel/cstate.c | 152 +++++++++++++++++++++++++++---------------------
arch/x86/events/intel/rapl.c | 378 ++++++++++++++++++++++++++++++++++++++++++++++++++++++------------------------------------------------------------------
arch/x86/events/msr.c | 110 +++++++++++++++++++----------------
arch/x86/events/probe.c | 42 ++++++++++++++
arch/x86/events/probe.h | 29 ++++++++++
6 files changed, 388 insertions(+), 325 deletions(-)
create mode 100644 arch/x86/events/probe.c
create mode 100644 arch/x86/events/probe.h