On Tue, Dec 22, 2015 at 01:19:14PM -0600, Suthikulpanit, Suravee wrote:
This patch introduces amd_iommu_get_num_iommus(). Initially, this is
intended to be used by Perf AMD IOMMU driver.
Signed-off-by: Suravee Suthikulpanit <Suravee.Suthikulpanit@xxxxxxx>
---
drivers/iommu/amd_iommu_init.c | 16 ++++++++++++++++
include/linux/perf/perf_event_amd_iommu.h | 2 ++
2 files changed, 18 insertions(+)
diff --git a/drivers/iommu/amd_iommu_init.c b/drivers/iommu/amd_iommu_init.c
index 275c0f5..9c62613 100644
--- a/drivers/iommu/amd_iommu_init.c
+++ b/drivers/iommu/amd_iommu_init.c
@@ -2244,6 +2244,22 @@ bool amd_iommu_v2_supported(void)
}
EXPORT_SYMBOL(amd_iommu_v2_supported);
+static int amd_iommu_cnt;
+
+int amd_iommu_get_num_iommus(void)
+{
+ struct amd_iommu *iommu;
+
+ if (amd_iommu_cnt)
+ return amd_iommu_cnt;
+
+ for_each_iommu(iommu)
+ amd_iommu_cnt++;
It is better to set amd_iommu_cnt during IOMMU initialization. You can
just increment this value after an IOMMU has been set up.
Joerg