[PATCH V6 0/7] perf/amd/iommu: Enable multi-IOMMU support

From: Suravee Suthikulpanit
Date: Fri Dec 23 2016 - 09:13:10 EST

From: Suravee Suthikulpanit <ssuthiku@xxxxxxxxxx>

This patch series modifies the existing IOMMU and Perf drivers to support
systems with multiple IOMMUs by allocating an amd_iommu PMU per IOMMU instance.
This allows users to specify performance events and filters separately for each

This has been tested on the new family17h-based server w/ multiple IOMMUs.

Git branch containing this patch series is available here:

https://github.com/ssuthiku/linux.git perf-iommu-v6

Changes from V5 (https://lkml.org/lkml/2016/2/23/370)
* Rebased onto v4.9.
* Remove the patch which consolidates function delclarations since
we have not yet agreed on the appropriate place for the new header file.

Suravee Suthikulpanit (7):
perf/amd/iommu: Misc fix up perf_iommu_read
perf/amd/iommu: Modify functions to query max banks and counters
perf/amd/iommu: Modify IOMMU API to allow specifying IOMMU index
perf/amd/iommu: Declare pr_fmt and remove unnecessary pr_debug
perf/amd/iommu: Clean up perf_iommu_enable_event
iommu/amd: Introduce amd_iommu_get_num_iommus()
perf/amd/iommu: Enable support for multiple IOMMUs

arch/x86/events/amd/iommu.c | 206 ++++++++++++++++++++--------------------
arch/x86/events/amd/iommu.h | 17 ++--
drivers/iommu/amd_iommu_init.c | 119 ++++++++++++++++-------
drivers/iommu/amd_iommu_proto.h | 15 ++-
4 files changed, 209 insertions(+), 148 deletions(-)