diff options
author | Joerg Roedel <joerg.roedel@amd.com> | 2008-12-12 09:05:16 -0500 |
---|---|---|
committer | Joerg Roedel <joerg.roedel@amd.com> | 2009-01-03 08:11:59 -0500 |
commit | 0f2a86f200bc97ae6cefc5d3ac879094b3fcde48 (patch) | |
tree | a1ae52873ab4bcda1e9db4cb1f0ff67450832d31 | |
parent | da49f6df726ecaaee87757e8b65a560679d32f99 (diff) |
AMD IOMMU: add stats counter for map_single requests
Impact: see number of map_single requests in debugfs
Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
-rw-r--r-- | arch/x86/kernel/amd_iommu.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/arch/x86/kernel/amd_iommu.c b/arch/x86/kernel/amd_iommu.c index b21435748e0d..ef377865eb76 100644 --- a/arch/x86/kernel/amd_iommu.c +++ b/arch/x86/kernel/amd_iommu.c | |||
@@ -65,6 +65,7 @@ static struct dma_ops_domain *find_protection_domain(u16 devid); | |||
65 | */ | 65 | */ |
66 | 66 | ||
67 | DECLARE_STATS_COUNTER(compl_wait); | 67 | DECLARE_STATS_COUNTER(compl_wait); |
68 | DECLARE_STATS_COUNTER(cnt_map_single); | ||
68 | 69 | ||
69 | static struct dentry *stats_dir; | 70 | static struct dentry *stats_dir; |
70 | static struct dentry *de_isolate; | 71 | static struct dentry *de_isolate; |
@@ -92,6 +93,7 @@ static void amd_iommu_stats_init(void) | |||
92 | (u32 *)&amd_iommu_unmap_flush); | 93 | (u32 *)&amd_iommu_unmap_flush); |
93 | 94 | ||
94 | amd_iommu_stats_add(&compl_wait); | 95 | amd_iommu_stats_add(&compl_wait); |
96 | amd_iommu_stats_add(&cnt_map_single); | ||
95 | } | 97 | } |
96 | 98 | ||
97 | #endif | 99 | #endif |
@@ -1278,6 +1280,8 @@ static dma_addr_t map_single(struct device *dev, phys_addr_t paddr, | |||
1278 | dma_addr_t addr; | 1280 | dma_addr_t addr; |
1279 | u64 dma_mask; | 1281 | u64 dma_mask; |
1280 | 1282 | ||
1283 | INC_STATS_COUNTER(cnt_map_single); | ||
1284 | |||
1281 | if (!check_device(dev)) | 1285 | if (!check_device(dev)) |
1282 | return bad_dma_address; | 1286 | return bad_dma_address; |
1283 | 1287 | ||