Re: [PATCH V6 2/7] perf/amd/iommu: Modify functions to query max banks and counters

From: Suravee Suthikulpanit
Date: Mon Jan 09 2017 - 05:50:34 EST




On 1/4/17 21:48, Joerg Roedel wrote:
On Fri, Dec 23, 2016 at 08:38:45PM +0700, Suravee Suthikulpanit wrote:
--- a/arch/x86/events/amd/iommu.h
+++ b/arch/x86/events/amd/iommu.h
@@ -24,15 +24,12 @@
#define PC_MAX_SPEC_BNKS 64
#define PC_MAX_SPEC_CNTRS 16

-/* iommu pc reg masks*/
-#define IOMMU_BASE_DEVID 0x0000
-
/* amd_iommu_init.c external support functions */
extern bool amd_iommu_pc_supported(void);

-extern u8 amd_iommu_pc_get_max_banks(u16 devid);
+extern u8 amd_iommu_pc_get_max_banks(uint devid);

-extern u8 amd_iommu_pc_get_max_counters(u16 devid);
+extern u8 amd_iommu_pc_get_max_counters(uint devid);

The parameters are now iommu-indexes and not device-ids anymore. You
should reflect that in the prototypes here too.

Ahh.. thanks for pointing out. I missed this part.

diff --git a/drivers/iommu/amd_iommu_proto.h b/drivers/iommu/amd_iommu_proto.h
index 7eb60c1..1f10b3f 100644
--- a/drivers/iommu/amd_iommu_proto.h
+++ b/drivers/iommu/amd_iommu_proto.h
@@ -58,8 +58,8 @@ extern int amd_iommu_domain_set_gcr3(struct iommu_domain *dom, int pasid,

/* IOMMU Performance Counter functions */
extern bool amd_iommu_pc_supported(void);
-extern u8 amd_iommu_pc_get_max_banks(u16 devid);
-extern u8 amd_iommu_pc_get_max_counters(u16 devid);
+extern u8 amd_iommu_pc_get_max_banks(uint devid);
+extern u8 amd_iommu_pc_get_max_counters(uint devid);

Same here, and why do you need to declare the prototypes in two
different header files?

Hm.. actually good point. I will remove the unnecessary function declarations in the amd_iommu_proto.h.

Thanks,
Suravee