aboutsummaryrefslogtreecommitdiffstats
path: root/arch/x86/kernel/amd_iommu.c
diff options
context:
space:
mode:
authorJoerg Roedel <joerg.roedel@amd.com>2008-12-12 09:07:12 -0500
committerJoerg Roedel <joerg.roedel@amd.com>2009-01-03 08:11:59 -0500
commit146a6917fc30616401a090f55cff2b855ee5b2ab (patch)
treeb931b7a2d3e8eb049a129216767c66b8586bbdd9 /arch/x86/kernel/amd_iommu.c
parent0f2a86f200bc97ae6cefc5d3ac879094b3fcde48 (diff)
AMD IOMMU: add stats counter for unmap_single requests
Impact: see number of unmap_single requests in debugfs Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
Diffstat (limited to 'arch/x86/kernel/amd_iommu.c')
-rw-r--r--arch/x86/kernel/amd_iommu.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/arch/x86/kernel/amd_iommu.c b/arch/x86/kernel/amd_iommu.c
index ef377865eb76..71646c81421a 100644
--- a/arch/x86/kernel/amd_iommu.c
+++ b/arch/x86/kernel/amd_iommu.c
@@ -66,6 +66,7 @@ static struct dma_ops_domain *find_protection_domain(u16 devid);
66 66
67DECLARE_STATS_COUNTER(compl_wait); 67DECLARE_STATS_COUNTER(compl_wait);
68DECLARE_STATS_COUNTER(cnt_map_single); 68DECLARE_STATS_COUNTER(cnt_map_single);
69DECLARE_STATS_COUNTER(cnt_unmap_single);
69 70
70static struct dentry *stats_dir; 71static struct dentry *stats_dir;
71static struct dentry *de_isolate; 72static struct dentry *de_isolate;
@@ -94,6 +95,7 @@ static void amd_iommu_stats_init(void)
94 95
95 amd_iommu_stats_add(&compl_wait); 96 amd_iommu_stats_add(&compl_wait);
96 amd_iommu_stats_add(&cnt_map_single); 97 amd_iommu_stats_add(&cnt_map_single);
98 amd_iommu_stats_add(&cnt_unmap_single);
97} 99}
98 100
99#endif 101#endif
@@ -1321,6 +1323,8 @@ static void unmap_single(struct device *dev, dma_addr_t dma_addr,
1321 struct protection_domain *domain; 1323 struct protection_domain *domain;
1322 u16 devid; 1324 u16 devid;
1323 1325
1326 INC_STATS_COUNTER(cnt_unmap_single);
1327
1324 if (!check_device(dev) || 1328 if (!check_device(dev) ||
1325 !get_device_resources(dev, &iommu, &domain, &devid)) 1329 !get_device_resources(dev, &iommu, &domain, &devid))
1326 /* device not handled by any AMD IOMMU */ 1330 /* device not handled by any AMD IOMMU */