--- a/drivers/pci/intel-iommu.c
+++ b/drivers/pci/intel-iommu.c
-@@ -527,7 +527,7 @@ static void iommu_flush_write_buffer(str
+@@ -72,6 +72,8 @@ static struct deferred_flush_tables *def
+ /* bitmap for indexing intel_iommus */
+ static int g_num_of_iommus;
+
++static int rwbf_quirk = 0;
++
+ static DEFINE_SPINLOCK(async_umap_flush_lock);
+ static LIST_HEAD(unmaps_to_do);
+
+@@ -527,7 +529,7 @@ static void iommu_flush_write_buffer(str
u32 val;
unsigned long flag;
return;
val = iommu->gcmd | DMA_GCMD_WBF;
-@@ -1410,6 +1410,8 @@ static void domain_remove_dev_info(struc
- spin_unlock_irqrestore(&device_domain_lock, flags);
- }
-
-+static int rwbf_quirk = 0;
-+
- /*
- * find_domain
- * Note: we use struct pci_dev->dev.archdata.iommu stores the info
@@ -2453,3 +2455,12 @@ int __init intel_iommu_init(void)
return 0;
}
--- a/drivers/pci/intel-iommu.c
+++ b/drivers/pci/intel-iommu.c
-@@ -506,7 +506,7 @@ static void iommu_flush_write_buffer(str
+@@ -71,6 +71,8 @@ static struct deferred_flush_tables *def
+ /* bitmap for indexing intel_iommus */
+ static int g_num_of_iommus;
+
++static int rwbf_quirk = 0;
++
+ static DEFINE_SPINLOCK(async_umap_flush_lock);
+ static LIST_HEAD(unmaps_to_do);
+
+@@ -506,7 +508,7 @@ static void iommu_flush_write_buffer(str
u32 val;
unsigned long flag;
return;
val = iommu->gcmd | DMA_GCMD_WBF;
-@@ -1315,6 +1315,8 @@ static void domain_remove_dev_info(struc
- spin_unlock_irqrestore(&device_domain_lock, flags);
- }
-
-+static int rwbf_quirk = 0;
-+
- /*
- * find_domain
- * Note: we use struct pci_dev->dev.archdata.iommu stores the info
@@ -2436,3 +2438,13 @@ u64 intel_iommu_iova_to_pfn(struct dmar_
return pfn >> VTD_PAGE_SHIFT;
}