aboutsummaryrefslogtreecommitdiffstats
path: root/arch
diff options
context:
space:
mode:
authorJoerg Roedel <joerg.roedel@amd.com>2008-12-12 09:48:28 -0500
committerJoerg Roedel <joerg.roedel@amd.com>2009-01-03 08:11:59 -0500
commit18811f55d48e5f3ee70c4744c592f940022fa592 (patch)
tree626f9661a133e83780f3cc6e7c25691d1cccb970 /arch
parentf57d98ae6979f7bcbf758023b4716f485385f903 (diff)
AMD IOMMU: add stats counter for domain tlb flushes
Impact: see number of domain tlb flushes in debugfs Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
Diffstat (limited to 'arch')
-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 e99022d3a394..a897c7246dca 100644
--- a/arch/x86/kernel/amd_iommu.c
+++ b/arch/x86/kernel/amd_iommu.c
@@ -73,6 +73,7 @@ DECLARE_STATS_COUNTER(cnt_alloc_coherent);
73DECLARE_STATS_COUNTER(cnt_free_coherent); 73DECLARE_STATS_COUNTER(cnt_free_coherent);
74DECLARE_STATS_COUNTER(cross_page); 74DECLARE_STATS_COUNTER(cross_page);
75DECLARE_STATS_COUNTER(domain_flush_single); 75DECLARE_STATS_COUNTER(domain_flush_single);
76DECLARE_STATS_COUNTER(domain_flush_all);
76 77
77static struct dentry *stats_dir; 78static struct dentry *stats_dir;
78static struct dentry *de_isolate; 79static struct dentry *de_isolate;
@@ -108,6 +109,7 @@ static void amd_iommu_stats_init(void)
108 amd_iommu_stats_add(&cnt_free_coherent); 109 amd_iommu_stats_add(&cnt_free_coherent);
109 amd_iommu_stats_add(&cross_page); 110 amd_iommu_stats_add(&cross_page);
110 amd_iommu_stats_add(&domain_flush_single); 111 amd_iommu_stats_add(&domain_flush_single);
112 amd_iommu_stats_add(&domain_flush_all);
111} 113}
112 114
113#endif 115#endif
@@ -431,6 +433,8 @@ static void iommu_flush_domain(u16 domid)
431 struct amd_iommu *iommu; 433 struct amd_iommu *iommu;
432 struct iommu_cmd cmd; 434 struct iommu_cmd cmd;
433 435
436 INC_STATS_COUNTER(domain_flush_all);
437
434 __iommu_build_inv_iommu_pages(&cmd, CMD_INV_IOMMU_ALL_PAGES_ADDRESS, 438 __iommu_build_inv_iommu_pages(&cmd, CMD_INV_IOMMU_ALL_PAGES_ADDRESS,
435 domid, 1, 1); 439 domid, 1, 1);
436 440