intel-iommu: Add for_each_iommu() and for_each_active_iommu() macros
authorDavid Woodhouse <David.Woodhouse@intel.com>
Fri, 3 Apr 2009 14:19:32 +0000 (15:19 +0100)
committerDavid Woodhouse <David.Woodhouse@intel.com>
Fri, 3 Apr 2009 20:45:46 +0000 (21:45 +0100)
Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
Acked-by: Ingo Molnar <mingo@elte.hu>
include/linux/dmar.h

index 2f34274689564e3bffb72739ac754081e4ad66f7..0b4aa80699857dbf70e855a3a5a95759b8dfdc96 100644 (file)
@@ -44,6 +44,14 @@ extern struct list_head dmar_drhd_units;
 #define for_each_drhd_unit(drhd) \
        list_for_each_entry(drhd, &dmar_drhd_units, list)
 
+#define for_each_active_iommu(i, drhd)                                 \
+       list_for_each_entry(drhd, &dmar_drhd_units, list)               \
+               if (i=drhd->iommu, drhd->ignored) {} else
+
+#define for_each_iommu(i, drhd)                                                \
+       list_for_each_entry(drhd, &dmar_drhd_units, list)               \
+               if (i=drhd->iommu, 0) {} else 
+
 extern int dmar_table_init(void);
 extern int dmar_dev_scope_init(void);