linux_dsm_epyc7002/arch/x86/events/intel
Kan Liang a54fa07930 perf/x86/intel/uncore: Locate specific box by checking full device info
Some platforms, e.g. Knights Landing, use a common PCI device ID for
multiple instances of an uncore PMU device type. So it is impossible to
locate the specific instances only by PCI device ID.

The current code specially handles Knights Landing by arbitrarily pointing
an instance to an unused uncore box. However, we still have no idea
which uncore device is mapped to which box.

Furthermore, there could be more platforms which use a common PCI device ID
for uncore devices. We have to specially handle them one by one.

This patch records full device information (slot, func, and device ID)
in id_table[]. So the probe function can point the instance to a specific
uncore box by checking the full device information.

Tested-by: Lukasz Odzioba <lukasz.odzioba@intel.com>
Signed-off-by: Kan Liang <kan.liang@intel.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Acked-by: tglx@linutronix.de
Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
Cc: Arnaldo Carvalho de Melo <acme@redhat.com>
Cc: Jiri Olsa <jolsa@redhat.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Stephane Eranian <eranian@google.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Vince Weaver <vincent.weaver@maine.edu>
Cc: bp@suse.de
Cc: harish.chegondi@intel.com
Cc: hubert.chrzaniuk@intel.com
Cc: lawrence.f.meadows@intel.com
Link: http://lkml.kernel.org/r/1463379504-39003-1-git-send-email-kan.liang@intel.com
Signed-off-by: Ingo Molnar <mingo@kernel.org>
2016-06-03 09:40:18 +02:00
..
bts.c perf/x86/intel/bts: Move transaction start/stop to start/stop callbacks 2016-03-31 10:30:44 +02:00
core.c perf/x86/intel: Change offcore response masks for Knights Landing 2016-06-03 09:40:17 +02:00
cqm.c perf/x86/cqm: Factor out some common code 2016-03-21 09:08:22 +01:00
cstate.c x86/cpufeature: Fix build bug caused by merge artifact with the removal of cpu_has_hypervisor 2016-04-01 09:03:27 +02:00
ds.c perf/x86/intel: Add Goldmont CPU support 2016-04-23 14:12:27 +02:00
knc.c perf/x86/intel: Fix PEBS warning by only restoring active PMU in pmi 2016-03-08 12:18:32 +01:00
lbr.c Merge branch 'perf/urgent' into perf/core, to resolve conflict 2016-04-28 10:35:17 +02:00
Makefile x86/perf/intel/cstate: Modularize driver 2016-03-31 10:30:38 +02:00
p4.c perf/x86/intel/p4: Trival indentation fix, remove space 2016-05-20 09:18:22 +02:00
p6.c perf/x86: Move perf_event.h to its new home 2016-02-17 10:11:36 +01:00
pt.c perf/x86/intel/pt: Generate PMI in the STOP region as well 2016-05-12 10:14:55 +02:00
pt.h perf/x86/intel/pt: Export CPU frequency ratios needed by PT decoders 2016-05-05 10:16:28 +02:00
rapl.c perf/x86/intel/rapl: Fix pmus free during cleanup 2016-05-25 10:56:43 +02:00
uncore_nhmex.c perf/x86/intel/uncore: Clean up hardware on exit 2016-02-29 09:35:15 +01:00
uncore_snb.c perf/x86/intel/uncore: Store box in event->pmu_private 2016-02-29 09:35:17 +01:00
uncore_snbep.c perf/x86/intel/uncore: Locate specific box by checking full device info 2016-06-03 09:40:18 +02:00
uncore.c perf/x86/intel/uncore: Locate specific box by checking full device info 2016-06-03 09:40:18 +02:00
uncore.h perf/x86/intel/uncore: Locate specific box by checking full device info 2016-06-03 09:40:18 +02:00